Connector Axis Controller

interface ICwAPI3DConnectorAxisController

Public Functions

virtual ICwAPI3DString *getLastError(int32_t *aErrorCode) = 0

Gets the last error message.

Parameters:

aErrorCode[out] A pointer to an integer where the error code will be stored.

Returns:

[ICwAPI3DString*] A string containing the last error message.

virtual elementID createStandardConnector(const character *aAxisName, CwAPI3D::vector3D aPoint1, CwAPI3D::vector3D aPoint2) = 0

Creates a standard connector axis between two points.

Parameters:
  • aAxisName[in] [const character*] Name of the standard axis

  • aPoint1[in] [vector3D] first point

  • aPoint2[in] [vector3D] second point

Returns:

[elementID] The id of the created standard connector.

virtual ICwAPI3DString *getItemGuidByName(const character *aName, uint64_t aItemType) = 0

Gets the GUID of an item by its name and type.

Parameters:
Returns:

[ICwAPI3DString*] The GUID of the item.

virtual double getBoltLength(elementID aAxisId) = 0

Gets the Bolt Length.

Parameters:

aAxisId[in] [elementID] The ID of the axis.

Returns:

[double] The bolt length.

virtual void setBoltLength(elementID aAxisId, double aLength) = 0

Sets the Bolt Length.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aLength[in] [double] The bolt length.

virtual double getBoltOverLength(elementID aAxisId) = 0

Gets the Bolt OverLength.

Parameters:

aAxisId[in] [elementID] The ID of the axis.

Returns:

[double] The bolt over length.

virtual void setBoltOverLength(elementID aAxisId, double aOverLength) = 0

Sets the Bolt OverLength.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aOverLength[in] [double] The bolt over length.

virtual bool getBoltLengthAutomatic(elementID aAxisId) = 0

Returns if Bolt Length Automatic is set.

Parameters:

aAxisId[in] [elementID] The ID of the axis.

Returns:

[bool] True if the bolt length is set to automatic, false otherwise.

virtual void setBoltLengthAutomatic(elementID aAxisId, bool aLengthAutomatic) = 0

Sets the Bolt Length Automatic value.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aLengthAutomatic[in] [bool] The automatic length value.

virtual ICwAPI3DString *getBoltItemGuid(elementID aAxisId) = 0

Gets the Guid of the Bolt Item.

Parameters:

aAxisId[in] [elementID] The ID of the axis.

Returns:

[ICwAPI3DString*] The bolt item Guid.

virtual void setBoltItem(elementID aAxisId, const character *aItemGuid) = 0

Sets the Bolt Item.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aItemGuid[in] [const character*] The bolt item Guid.

virtual void setDiameter(elementID aAxisId, double aDiameter) = 0

Sets the Drilling Diameter for all Sections.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aDiameter[in] [double] The drilling diameter.

virtual void setSectionDiameter(elementID aAxisId, uint32_t aSectionIndex, double aDiameter) = 0

Sets the Drilling Diameter for a specific Sections.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aSectionIndex[in] [uint32_t] The section index. (0 based index)

  • aDiameter[in] [double] The drilling diameter.

virtual double getSectionDiameter(elementID aAxisId, uint32_t aSectionIndex) = 0

Gets the Drilling Diameter of a specific Sections.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aSectionIndex[in] [uint32_t] The section index. (0 based index)

Returns:

[double] The drilling diameter.

virtual ICwAPI3DStringList *getAxisItemsGUIDs(elementID aAxisId) = 0

Returns a list of GUIDs of all axis items.

Parameters:

aAxisId[in] [elementID] The ID of the axis.

Returns:

[ICwAPI3DStringList*] The list of GUIDs of all axis items.

virtual ICwAPI3DString *getAxisItemName(const character *aGuid) = 0

Returns the name of an axis item.

Parameters:

aGuid[in] [const character*] The axis item Guid.

Returns:

[ICwAPI3DString*] The axis item name.

virtual ICwAPI3DString *getAxisItemMaterial(const character *aGuid) = 0

Returns the material of an axis item.

Parameters:

aGuid[in] [const character*] The axis item Guid.

Returns:

[ICwAPI3DString*] The material of the axis item.

virtual ICwAPI3DString *getAxisItemNorm(const character *aGuid) = 0

Returns the norm of an axis item.

Parameters:

aGuid[in] [const character*] The axis item Guid.

Returns:

[ICwAPI3DString*] The norm of the axis item.

virtual ICwAPI3DString *getAxisItemStrengthCategory(const character *aGuid) = 0

Returns the strength category of an axis item.

Parameters:

aGuid[in] [const character*] The axis item Guid.

Returns:

[ICwAPI3DString*] The strength category of the axis item.

virtual ICwAPI3DString *getAxisItemUserField(const character *aGuid, int32_t aUserItemNumber) = 0

Returns an userfield value of an axis item.

Parameters:
  • aGuid[in] [const character*] The axis item Guid.

  • aUserItemNumber[in] [int32_t] The user item field number. (1-5)

Returns:

[ICwAPI3DString*] The user field value.

virtual ICwAPI3DString *getAxisItemOrderNumber(const character *aGuid) = 0

Returns the axis item order number of an axis item.

Parameters:

aGuid[in] [const character*] The axis item Guid.

Returns:

[ICwAPI3DString*] The axis item order number of the axis item.

virtual ICwAPI3DString *getBoltOrderNumber(elementID aAxisId) = 0

Returns the order number of a bolt item.

Parameters:

aAxisId[in] [elementID] The ID of the axis.

Returns:

[ICwAPI3DString*] The order number of the bolt item.

virtual bool checkAxis(elementID aAxisId) = 0

Returns if the axis is valid.

Parameters:

aAxisId[in] [elementID] The ID of the axis.

Returns:

[bool] True if valid, false otherwise.

virtual void clearErrors() = 0

Clears all errors.

virtual void updateAxisCuttingAbility(ICwAPI3DElementIDList *aAxisIdList) = 0

Updates the Connection Config (CuttingAbility) of Axis/VBAs.

Parameters:

aAxisIdList[in] [ICwAPI3DElementIDList*] The axis id list to update.

virtual int getSectionCount(elementID aAxisId) = 0

Returns the number of sections.

Parameters:

aAxisId[in] [elementID] The ID of the axis.

Returns:

[int] The number of sections of the axis.

virtual ICwAPI3DString *getSectionMaterialName(elementID aAxisId, uint32_t aSectionIndex) = 0

Returns material name of a section contact element.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aSectionIndex[in] [uint32_t] The section index. (0 based index)

Returns:

[ICwAPI3DString*] The material name of the section contact element.

virtual ICwAPI3DStringList *getStandardConnectorList() = 0

Returns a list of all standard connectors.

Returns:

[ICwAPI3DStringList*] The list of all standard connectors.

virtual void startConfigurationDialog() = 0

Starts the ConnectorAxis configuration dialog.

virtual elementID createBlankConnector(double aDiameter, CwAPI3D::vector3D aPoint1, CwAPI3D::vector3D aPoint2) = 0

Creates a blank connector between two points.

Parameters:
  • aDiameter[in] [double] The diameter of the connector.

  • aPoint1[in] [vector3D] The first point for the connector.

  • aPoint2[in] [vector3D] The second point for the connector.

Returns:

[elementID] The ID of the created connector.

virtual elementID getSectionContactElement(elementID aAxisId, uint32_t aSectionIndex) = 0

Gets the contact element of a specific section.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aSectionIndex[in] [uint32_t] The section index. (0 based index)

Returns:

[elementID] The ID of the contact element.

virtual double getBoltDiameter(CwAPI3D::elementID aAxisId) = 0

Gets the diameter of a bolt.

Parameters:

aAxisId[in] [elementID] The ID of the axis.

Returns:

[double] The diameter of the bolt.

virtual void importFromFile(const character *aFilePath) = 0

Imports a file.

Parameters:

aFilePath[in] The path to the file to be imported.

virtual double getCounterboreDiameterForStartSide(elementID aAxisId, int32_t aSectionIndex) const = 0

Get counterbore diameter for start side.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aSectionIndex[in] [uint32_t] The section index. (0 based index)

Returns:

[double] The counterbore diameter for start side.

virtual double getCounterboreDiameterForEndSide(elementID aAxisId, int32_t aSectionIndex) const = 0

Get counterbore diameter for end side.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aSectionIndex[in] [uint32_t] The section index. (0 based index)

Returns:

[double] The counterbore diameter for end side.

virtual double getCounterboreDepthForStartSide(elementID aAxisId, int32_t aSectionIndex) const = 0

Get counterbore depth for start side.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aSectionIndex[in] [uint32_t] The section index. (0 based index)

Returns:

[double] The counterbore depth for start side.

virtual double getCounterboreDepthForEndSide(elementID aAxisId, int32_t aSectionIndex) const = 0

Get counterbore depth for end side.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aSectionIndex[in] [uint32_t] The section index. (0 based index)

Returns:

[double] The counterbore depth for end side.

virtual bool getCounterboreIsConicalForStartSide(elementID aAxisId, int32_t aSectionIndex) const = 0

Get if the counterbore conical for start side.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aSectionIndex[in] [uint32_t] The section index. (0 based index)

Returns:

[bool] True if the counterbore conical for start side, false otherwise.

virtual bool getCounterboreIsConicalForEndSide(elementID aAxisId, int32_t aSectionIndex) const = 0

Get if the counterbore conical for end side.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aSectionIndex[in] [uint32_t] The section index. (0 based index)

Returns:

[bool] True if the counterbore conical for End side, false otherwise.

virtual void setCounterboreForStartSide(elementID aAxisId, int32_t aSectionIndex, double aDiameter, double aDepth, bool aIsConical) = 0

Set counterbore for start side.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aSectionIndex[in] [uint32_t] The section index. (0 based index)

  • aDiameter[in] [double] The counterbore diameter.

  • aDepth[in] [double] The counterbore depth.

  • aIsConical[in] [bool] Is the counterbore conical.

virtual void setCounterboreForEndSide(elementID aAxisId, int32_t aSectionIndex, double aDiameter, double aDepth, bool aIsConical) = 0

Set counterbore for end side.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aSectionIndex[in] [uint32_t] The section index. (0 based index)

  • aDiameter[in] [double] The counterbore diameter.

  • aDepth[in] [double] The counterbore depth.

  • aIsConical[in] [bool] Is the counterbore conical.

virtual int32_t getIntersectionCount(elementID aAxisId) const = 0

Get the intersection count.

Parameters:

aAxisId[in] [elementID] The ID of the axis.

Returns:

[int32_t] The intersection count.

virtual ICwAPI3DStringList *getItemGuidsAtIntersection(elementID aAxisId, int32_t aIntersectionIndex) = 0

Get the the items Guid at intersection.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aIntersectionIndex[in] [int32_t] The intersection index. (0 based index)

Returns:

[ICwAPI3DStringList*] The items Guid list at intersection.

virtual void setItemGuidsAtIntersection(elementID aAxisId, int32_t aIntersectionIndex, ICwAPI3DStringList *aItemGuids) = 0

Set items Guid at intersection.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aIntersectionIndex[in] [int32_t] The intersection index. (0 based index)

  • aItemGuids[in] [ICwAPI3DStringList*] The items Guid list at intersection.

virtual double getSectionLength(elementID aAxisId, int32_t aSectionIndex) const = 0

Get the section length.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aSectionIndex[in] [uint32_t] The section index. (0 based index)

Returns:

[double] The section length.

virtual bool getSectionOblongDrillingIsEnabled(elementID aAxisId, int32_t aSectionIndex) const = 0

Get if the section oblong drilling is enabled.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aSectionIndex[in] [uint32_t] The section index. (0 based index)

Returns:

[bool] True if the section oblong drilling is enabled, false otherwise.

virtual double getSectionOblongDrillingPositiveValue(elementID aAxisId, int32_t aSectionIndex) const = 0

Get the section oblong drilling positive value.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aSectionIndex[in] [uint32_t] The section index. (0 based index)

Returns:

[double] The section oblong drilling positive value.

virtual double getSectionOblongDrillingNegativeValue(elementID aAxisId, int32_t aSectionIndex) const = 0

Get the section oblong drilling negative value.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aSectionIndex[in] [uint32_t] The section index. (0 based index)

Returns:

[double] The section oblong drilling negative value.

virtual double getSectionOblongDrillingAngle(elementID aAxisId, int32_t aSectionIndex) const = 0

Get the section oblong drilling angle.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aSectionIndex[in] [uint32_t] The section index. (0 based index)

Returns:

[double] The section oblong drilling angle.

virtual void setSectionOblongDrillingIsDisabled(elementID aAxisId, int32_t aSectionIndex) = 0

Disable section oblong drilling.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aSectionIndex[in] [uint32_t] The section index. (0 based index)

virtual void setSectionOblongDrillingIsEnabled(elementID aAxisId, int32_t aSectionIndex, double aPositiveValue, double aNegativeValue, double aAngle) = 0

Enable section oblong drilling.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aSectionIndex[in] [uint32_t] The section index. (0 based index)

  • aPositiveValue[in] [double] The positive value.

  • aNegativeValue[in] [double] The negative value.

  • aAngle[in] [double] The drilling angle.

virtual void setItemsAtIntersection(elementID aAxisId, int32_t aIntersectionIndex, ICwAPI3DConnectorAxisItemList *aItems) = 0

Set items at intersection.

Parameters:
  • aAxisId[in] [elementID] The ID of the axis.

  • aIntersectionIndex[in] [int32_t] The intersection index. (0 based index)

  • aItems[in] [ICwAPI3DConnectorAxisItemList*] The item list at intersection.