
This functionality is provided as a preview
of intended future API capabilities. You are encouraged to use it and report any problems or suggestions using the
Fusion API and Scripts forum.
Because this is a preview of future functionality, there is the possibility that it will change, which will possibly
break any existing programs that use this functionality. Because of that, you should never deliver any programs that use
any preview capabilities. For a distributed program, you should wait until it has moved from preview to released state.
| Name | Description |
| classType | Static function that all classes support that returns the type of the class as a string. The returned string matches the string returned by the objectType property. For example if you have a reference to an object and you want to check if it's a SketchLine you can use myObject.objectType == fusion.SketchLine.classType(). |
| convertImportedToFusionPMI | Converts this PMIAnnotation to a Fusion PMIAnnotation if it is of supported type and has valid reference geometry. Supported types are: Imported PMI annotation (PMIImportedDimension) and valid reference geometry is converted to Hole/Thread Note PMI. Imported PMI annotation (PMIImportedNote) and valid reference geometry is converted to Leader Line Note PMI. Imported PMI folder (PMIImportedFolder) which includes information about a Hole Note is converted to Hole/Thread Note PMI. The converted PMIAnnotation can then be edited. After successful conversion, the new PMIAnnotation will be added to the collection of PMI in the component, and the original PMIAnnotation will be removed. If it fails to convert, the original PMIAnnotation remains unchanged. |
| createForAssemblyContext | Creates or returns a proxy for the native object - i.e. a new object that represents this object but adds the assembly context defined by the input occurrence. |
| deleteMe | Deletes the PMI. |
| markUpToDate | Marks the PMI as up-to-date and dismisses warnings. |
| Name | Description |
| annotationTargetPoint | Gets the point on the annotation plane where the leader line meets the annotated geometry. |
| annotationTextPoint | Gets and sets the point on the annotation plane where the PMI text is anchored. |
| assemblyContext | Returns the assembly occurrence (i.e. the occurrence) of this object in an assembly. This is only valid in the case where this is acting as a proxy in an assembly. Returns null in the case where the object is not in the context of an assembly but is already the native object. |
| counterboreDepth | Gets and sets the PMIGeometricValue used to define the depth of the counterbore segment of the hole in cm. Not applicable for bosses. When querying, if the counterbore depth is not set, the value will be 0 and hasValue property will be false. When setting, it is possible to also add tolerances to the object set by setting the tolerance property of the PMIGeometricValue object. Setting this to an object with "hasValue" set to true and "value" set to 0 will result in the modeled value being set (if such value exists in the model). Updating this value will reset the segments in the PMI. |
| counterboreDiameter | Gets and sets the PMIGeometricValue used to define the diameter of the counterbore segment of the hole in cm. Not applicable for bosses. When querying, if the counterbore diameter is not set, the value will be 0 and hasValue property will be false. When setting, it is possible to also add tolerances to the object set by setting the tolerance property of the PMIGeometricValue object. Setting this to an object with "hasValue" set to true and "value" set to 0 will result in the modeled value being set (if such value exists in the model). Updating this value will reset the segments in the PMI. |
| counterboreRadius | Gets and sets the PMIGeometricValue used to define the radius of the counterbore segment of the hole in cm. Not applicable for bosses. When querying, if the counterbore radius is not set, the value will be 0 and hasValue property will be false. When setting, it is possible to also add tolerances to the object set by setting the tolerance property of the PMIGeometricValue object. Setting this to an object with "hasValue" set to true and "value" set to 0 will result in the modeled value being set (if such value exists in the model). Updating this value will reset the segments in the PMI. |
| countersinkAngle | Gets and sets the PMIGeometricValue used to define the angle of the countersink segment of the hole in radians. Not applicable for bosses. When querying, if the countersink angle is not set, the value will be 0 and hasValue property will be false. When setting, this value does not have tolerances, and will not be taken into account. Setting this to an object with "hasValue" set to true and "value" set to 0 will result in the modeled value being set (if such value exists in the model). Updating this value will reset the segments in the PMI. |
| countersinkDiameter | Gets and sets the PMIGeometricValue used to define the diameter of the countersink segment of the hole in cm. Not applicable for bosses. When querying, if the countersink diameter is not set, the value will be 0 and hasValue property will be false. When setting, it is possible to also add tolerances to the object set by setting the tolerance property of the PMIGeometricValue object. Setting this to an object with "hasValue" set to true and "value" set to 0 will result in the modeled value being set (if such value exists in the model). Updating this value will reset the segments in the PMI. |
| depth | Gets and sets the PMIGeometricValue used to define the depth of the hole in cm. In the case of bosses, it represents the height of the boss. When querying, if the depth is not set, the value will be 0 and hasValue property will be false. When setting, it is possible to also add tolerances to the object set by setting the tolerance property of the PMIGeometricValue object. Setting this to an object with "hasValue" set to true and "value" set to 0 will result in the modeled value being set (if such value exists in the model). Updating this value will reset the segments in the PMI. |
| diameter | Gets and sets the PMIGeometricValue used to define the diameter of the annotated hole or boss in cm. When querying, if the diameter is not set, the value will be 0 and hasValue property will be false. When setting, it is possible to also add tolerances to the object set by setting the tolerance property of the PMIGeometricValue object. Setting this to an object with "hasValue" set to true and "value" set to 0 will result in the modeled value being set (if such value exists in the model). Updating this value will reset the segments in the PMI. |
| errorOrWarningMessage | If there are errors or warnings in the PMI, this property will return a string that contains the error or warning message. Otherwise it returns an empty string. Only applies to PMI that has an associated parametric Feature. Returns empty string for other PMI types that don't have a parametric Feature. |
| hasImportedGeometry | Gets whether the created PMI was converted from an imported PMI and therefore whether it has original graphics/geometry that can be shown. |
| hasSecondaryDisplaySettings | Gets and sets whether there are secondary display settings defined for the Hole/Thread Note PMI. |
| healthState | Gets the health state of the PMI. Only applies to PMI that have a timeline object, in Parametric Modelling. Returns UnknownFeatureHealthState for other PMI types that don't have a parametric Feature. |
| holeType | Gets the type of the hole. |
| horizontalAlignment | Gets and sets the horizontal alignment of the PMI text relative to its anchor point. This determines how the text box is positioned relative to the text placement point. |
| isDeletable | Indicates if this PMI can be deleted. |
| isFlipHoleNormal | Gets and sets whether the hole normal should be treated as flipped, resulting in the hole top to be placed at the lowest found face of the hole. This is applicable only to complex holes, in other cases the value is ignored. |
| isHoleAnnotation | Indicates whether the PMI is representing a hole or a boss. |
| isLightBulbOn | Indicates if the light bulb (as displayed in the browser) is on. A PMI will only be visible if its light bulb, the containing folder's light bulb, the collection's and the component's light bulbs are all on. |
| isOutOfDate | Indicates if this PMI is outdated and needs to be recomputed. This typically happens when the geometry or parameters that the PMI references have been modified. Applicable for both imported and created PMI, regardless of whether they are parametric or not. |
| isParametric | Indicates if this PMI is parametric or not. |
| isPerpendicularLine | Gets and sets whether the PMI text is perpendicular to the leader line or parallel to it. |
| isShowImportedGeometry | Gets and sets whether the original graphics/geometry of the PMI should be visible. Only supported for PMI that has been converted from imported data. |
| isSuppressed | Indicates if this PMI is suppressed. Only applies to PMI that has an associated parametric Feature. Returns false for other PMI types that don't have a parametric Feature. |
| isThreaded | Gets and sets whether the hole or the boss has a thread associated. Setting this to false will result in all thread information being removed. Updating this value will reset the segments in the PMI. |
| isThreadedThrough | Gets and sets whether the hole or boss is threaded all the way through. Setting this to true will remove the thread depth information. Updating this value will reset the segments in the PMI. |
| isThrough | Gets and sets whether the hole should be considered a through hole. Setting this to true will remove the depth information related to the PMI. Setting this to false will result in a default depth set without tolerance. Updating this value will reset the segments in the PMI. |
| isValid | Indicates if this object is still valid, i.e. hasn't been deleted or some other action done to invalidate the reference. |
| isVisible | Indicates if the PMI is visible. This property is affected by the AssemblyContext (parent component) of the PMI. |
| isWantQuantityNote | Indicates if the quantity is visible in the graphics. Updating this value will reset the segments in the PMI. |
| isWantSelectAllMatchingHoles | Gets and sets whether the Hole/Thread Note PMI should represent all the matching holes in the design. While this can be set to true on existing PMI, it does not always ensures that all matching holes are included. Updating this value will result in the referenced entities being updated to include all matching holes. |
| leaderLineExtension | Gets and sets the length of the leader line extension. This value extends the leader line in the direction determined by the perpendicular setting. |
| name | Gets and sets the name of the PMI as it is shown in the browser. |
| nativeObject | The NativeObject is the object outside the context of an assembly and in the context of its parent component. Returns null in the case where this object is not in the context of an assembly but is already the native object. |
| objectType | This property is supported by all objects in the API and returns a string that contains the full name (namespace::objecttype) describing the type of the object. It's often useful to use this in combination with the classType method to see if an object is a certain type. For example: if obj.objectType == adsk.core.Point3D.classType(): |
| parentComponent | Gets the component this PMI belongs to. |
| plainText | This is a convenience property that provides the plain-text representation of the PMI text. It iterates through the segments and concatenates their text representation. |
| plane | Gets the plane of the PMI. |
| primaryDisplaySettings | Gets and sets the primary display settings for the Hole/Thread Note PMI. This will always be existent, and includes information about format and units. |
| quantity | Gets the number of holes/bosses the Hole/Thread Note PMI is associated with. |
| radius | Gets and sets the PMIGeometricValue used to define the radius of the hole in cm. Not applicable for bosses. When querying, if the radius is not set, the value will be 0 and hasValue property will be false. When setting, it is possible to also add tolerances to the object set by setting the tolerance property of the PMIGeometricValue object. Setting this to an object with "hasValue" set to true and "value" set to 0 will result in the modeled value being set (if such value exists in the model). Updating this value will reset the segments in the PMI. |
| referencedEntities | Returns an array of referenced entities for this PMI. |
| secondaryDisplaySettings | Gets and sets the secondary display settings for the Hole/Thread Note PMI. This will not always be existent, based on the hasSecondaryDisplaySettings value. Setting this value will also set hasSecondaryDisplaySettings to true. |
| segments | Gets and sets the list of PMISegments used to define the PMI text. The segments can be any combination of PMITextSegment, PMISymbolSegment and PMILineBreakSegment objects. Changing this property will result in changing the displayed text of the PMI. |
| shaftTolerance | Gets and sets the PMIGeometricValueTolerance for the shaft diameter of the annotated hole if a shaft tolerance exists. |
| threadDepth | Gets and sets the PMIGeometricValue used to define the thread depth of the hole in cm. In the case of bosses, it represents the thread length of the boss. When querying, if the thread depth is not set, the value will be 0 and hasValue property will be false. When setting, it is possible to also add tolerances to the object set by setting the tolerance property of the PMIGeometricValue object. Setting this to an object with "hasValue" set to true and "value" set to 0 will result in the modeled value being set (if such value exists in the model). Updating this value will reset the segments in the PMI. |
| threadInfo | Gets and sets the ThreadInfo object associated with the hole/thread note. Returns null if the hole is not threaded. Updating this value will reset the segments in the PMI. |
| timelineObject | Gets the timeline object associated with this PMI. Only applies to PMI that has an associated timeline feature. Returns null if the PMI does not have an associated timeline feature. |
| type | Gets the type of this PMI annotation. |
| verticalAlignment | Gets and sets the vertical alignment of the PMI text relative to its anchor point. This determines the vertical positioning of the text box relative to the calculated text placement point. |