SnapDetail Class

A SnapDetail is generated from the result of IModelDb.requestSnap call. In addition to the HitDetail about the reason the element was picked, it holds the exact point on the element from the snapping logic, plus additional information that varies with the type of element and snap mode.

Extends

Extended by

Methods

Name Description
constructor(from: HitDetail, snapMode: SnapMode = SnapMode.Nearest, heat: SnapHeat = SnapHeat.None, snapPoint?: XYZProps): SnapDetail Constructor for SnapDetail.  
clone(): SnapDetail Make a copy of this SnapDetail.  
draw(context: DecorateContext): void Draw this HitDetail as a Decoration.  
getCurvePrimitive(singleSegment: boolean = true): undefined | CurvePrimitive    
getHitType(): HitDetailType Returns HitDetailType.Snap  
getPoint(): Point3d Get the snap point if this SnapDetail is hot, the pick point otherwise.  
setCurvePrimitive(primitive?: CurvePrimitive, localToWorld?: Transform, geomType?: HitGeomType): void Set curve primitive and HitGeometryType for this SnapDetail.  
setSnapPoint(point: Point3d, heat: SnapHeat): void Change the snap point.  

Inherited methods

Name Inherited from Description
getToolTip(): Promise<string | HTMLElement> HitDetail Get the tooltip content for this HitDetail.
isSameHit(otherHit?: HitDetail): boolean HitDetail Determine if this HitPoint is from the same source as another HitDetail.

Properties

Name Type Description
adjustedPoint Readonly Point3d AccuSnap/AccuDraw can adjust the point after the snap.  
geomType undefined | HitGeomType The HitGeomType of this SnapDetail  
heat SnapHeat    
isHot Accessor ReadOnly boolean Return true if the pick point was closer than the snap aperture from the generated snap point.  
isPointAdjusted Accessor ReadOnly boolean Determine whether the SnapDetail.adjustedPoint is different than the SnapDetail.snapPoint.  
normal undefined | Vector3d Surface normal at snapPoint  
parentGeomType undefined | HitParentGeomType The HitGeomType of this SnapDetail  
primitive undefined | CurvePrimitive Curve primitive for snap.  
snapMode SnapMode    
snapPoint Readonly Point3d HitPoint adjusted by snap  
sprite undefined | Sprite A sprite to show the user the type of snap performed  

Inherited properties

Name Type Inherited from Description
distFraction Readonly number HitDetail  
distXY Readonly number HitDetail  
geometryClass Readonly undefined | GeometryClass HitDetail  
hitPoint Readonly Point3d HitDetail  
hitSource Readonly HitSource HitDetail  
iModel Accessor ReadOnly IModelConnection HitDetail The IModelConnection from which the hit originated. In some cases this may not be the same as the iModel associated with the Viewport -
for example, if a TiledGraphicsProvider is used to display graphics from a different iModel in the viewport.
This HitDetail's element, subcategory, and model Ids are defined in the context of this IModelConnection.
isElementHit Accessor ReadOnly boolean HitDetail Return whether sourceId is for a persistent element and not a pickable decoration.
isExternalIModelHit Accessor ReadOnly boolean HitDetail Returns true if this hit originated from an IModelConnection other than the one associated with the Viewport.
isMapHit Accessor ReadOnly boolean HitDetail  
isModelHit Accessor ReadOnly boolean HitDetail  
modelId Readonly undefined | string HitDetail  
priority Readonly HitPriority HitDetail  
sourceId Readonly string HitDetail  
subCategoryId Readonly undefined | string HitDetail  
testPoint Readonly Point3d HitDetail  
viewport Readonly ScreenViewport HitDetail  

Defined in

Last Updated: 29 November, 2022