Endtype Controller
-
interface ICwAPI3DEndtypeController
Public Functions
-
virtual ICwAPI3DString *getLastError(int32_t *aErrorCode) = 0
Gets the last error message.
- Parameters:
aErrorCode – [out] [int32_t*] A pointer to an integer where the error code will be stored.
- Returns:
[ICwAPI3DString*] A string containing the last error message.
-
virtual ICwAPI3DString *getEndtypeName(endtypeID aEndtypeId) = 0
Gets the endtype name by endtype id.
- Example:
// Define the endtype ID const endtypeID endtypeID = 12345; // Get the name of the endtype const character* endtypeName = aFactory.getEndtypeController()->getEndtypeName(endtypeID); // Output the result printf("Endtype name: %s\n", endtypeName);
- Parameters:
aEndtypeId – [in] [endtypeID] The endtype id.
- Returns:
[ICwAPI3DString*] The endtype name.
-
virtual endtypeID getEndtypeID(const character *aName) = 0
Gets the endtype id by endtype name.
- Example:
// Retrieve the ID of an existing endtype by its name const character* endtypeName = L"Tenon_100x50"; const endtypeID endtypeIDValue = aFactory.getEndtypeController()->getEndtypeID(endtypeName); // Output the retrieved ID printf("Endtype ID: %llu\n", endtypeIDValue);
-
virtual endtypeID getEndtypeIdStart(elementID aElementId) = 0
Gets the endtype id of the start face.
- Example:
// Get all identifiable elements ICwAPI3DElementIDList* selectedElements = aFactory.getElementController()->getAllIdentifiableElementIDs(); if (selectedElements->count()) == 0) return; // Take the first element const elementID element = selectedElements->at(0); // Get the start endtype ID const endtypeID startEndtypeID = aFactory.getEndtypeController()->getEndtypeIdStart(element); // Output the result printf("Start endtype ID: %llu\n", startEndtypeID);
-
virtual endtypeID getEndtypeIdEnd(elementID aElementId) = 0
Gets the endtype id of the end face.
- Example:
// Get all identifiable elements ICwAPI3DElementIDList* selectedElements = aFactory.getElementController()->getAllIdentifiableElementIDs(); if (selectedElements->count()) == 0) return; // Take the first element const elementID element = selectedElements->at(0); // Get the end endtype ID for the element const endtypeID endEndtypeID = aFactory.getEndtypeController()->getEndtypeIdEnd(element); // Output the result printf("End endtype ID: %llu\n", endEndtypeID);
-
virtual endtypeID getEndtypeIdFac(elementID aElementId, uint32_t aFaceNumber) = 0
Gets the endtype id of a face with the face number.
- Example:
// Get all identifiable elements ICwAPI3DElementIDList* selectedElements = aFactory.getElementController()->getAllIdentifiableElementIDs(); if (selectedElements->count()) == 0) return; // Take the first element const elementID element = selectedElements->at(0); // Define the face number const int faceNumber = 1; // Get the facet endtype ID for the specified face const endtypeID facetEndtypeID = aFactory.getEndtypeController()->getEndtypeIDFac(element, faceNumber); // Output the result printf("Facet endtype ID: %llu\n", facetEndtypeID);
Note
Endtypes can only be set on faces that are placed at start or end points. Endtypes cannot be placed on arbitrary faces.
-
virtual ICwAPI3DString *getEndtypeNameStart(elementID aElementId) = 0
Gets the endtype name of the start face.
- Example:
ICwAPI3DElementIDList* selectedElements = aFactory.getElementController()->getAllIdentifiableElementIDs(); if (selectedElements->count()) == 0) return; const elementID element = selectedElements->at(0); const character* startName = aFactory.getEndtypeController()->getEndtypeNameStart(element); printf("Start endtype name: %s\n", startName);
- Parameters:
aElementId – [in] [elementID] The element id.
- Returns:
[ICwAPI3DString*] The endtype name of the start face.
-
virtual ICwAPI3DString *getEndtypeNameEnd(elementID aElementId) = 0
Gets the endtype name of the end face.
- Example:
ICwAPI3DElementIDList* selectedElements = aFactory.getElementController()->getAllIdentifiableElementIDs(); if (selectedElements->count()) == 0) return; const elementID element = selectedElements->at(0); const character* endName = aFactory.getEndtypeController()->getEndtypeNameEnd(element); printf("End endtype name: %s\n", endName);
- Parameters:
aElementId – [in] [elementID] The element id.
- Returns:
[ICwAPI3DString*] The endtype name of the end face.
-
virtual ICwAPI3DString *getEndtypeNameFac(elementID aElementId, uint32_t aFaceNumber) = 0
Gets the endtype name of the face with a number.
- Example:
ICwAPI3DElementIDList* selectedElements = aFactory.getElementController()->getAllIdentifiableElementIDs(); if (selectedElements->count()) == 0) return; const elementID element = selectedElements->at(0); const int faceNumber = 2; const character* facetName = aFactory.getEndtypeController()->getEndtypeNameFac(element, faceNumber); printf("Facet endtype name: %s\n", facetName);
Note
Endtypes can only be set on faces that are placed at start or end points. Endtypes cannot be placed on arbitrary faces.
- Parameters:
aElementId – [in] [elementID] The element id.
aFaceNumber – [in] [uint32_t] The face number. 0 <= aFaceNumber < element face count.
- Returns:
[ICwAPI3DString*] The endtype name of the face.
-
virtual void setEndtypeNameStart(elementID aElementId, const character *aName) = 0
Sets the endtype to start face by endtype name.
- Example:
ICwAPI3DElementIDList* selectedElements = aFactory.getElementController()->getAllIdentifiableElementIDs(); if (selectedElements->count()) == 0) return; const elementID element = selectedElements->at(0); const character* endtypeName = L"Tenon_100x50"; aFactory.getEndtypeController()->setEndtypeNameStart(element, endtypeName);
-
virtual void setEndtypeNameEnd(elementID aElementId, const character *aName) = 0
Sets the endtype to end face by endtype name.
- Example:
ICwAPI3DElementIDList* selectedElements = aFactory.getElementController()->getAllIdentifiableElementIDs(); if (selectedElements->count()) == 0) return; const elementID element = selectedElements->at(0); const character* endtypeName = L"Mortise_100x50"; aFactory.getEndtypeController()->setEndtypeNameEnd(element, endtypeName);
-
virtual void setEndtypeNameFac(elementID aElementId, const character *aName, uint32_t aFaceNumber) = 0
Sets the endtype to a face by endtype name.
- Example:
ICwAPI3DElementIDList* selectedElements = aFactory.getElementController()->getAllIdentifiableElementIDs(); if (selectedElements->count()) == 0) return; const elementID element = selectedElements->at(0); const character* endtypeName = L"Dovetail_60x30"; const int faceNumber = 2; aFactory.getEndtypeController()->setEndtypeNameFacet(element, endtypeName, faceNumber);
Note
Endtypes can only be set on faces that are placed at start or end points. Endtypes cannot be placed on arbitrary faces.
-
virtual void setEndtypeIdStart(elementID aElementId, endtypeID aEndtypeId) = 0
Sets the endtype to start face by endtype id.
- Example:
ICwAPI3DEndtypeIDList* selectedElements = aFactory.getElementController()->getAllIdentifiableElementIDs(); if (selectedElements->count()) == 0) return; ICwAPI3DEndtypeIDList* element = selectedElements->at(0); const endtypeID endtypeId = 12345; aFactory.getEndtypeController()->setEndtypeIdStart(element, endtypeId);
-
virtual void setEndtypeIdEnd(elementID aElementId, endtypeID aEndtypeId) = 0
Sets the endtype to end face by endtype id.
- Example:
ICwAPI3DElementIDList* selectedElements = aFactory.getElementController()->getAllIdentifiableElementIDs(); if (selectedElements->count()) == 0) return; ICwAPI3DElementID element = selectedElements->at(0); const endtypeID endtypeId = 54321; aFactory.getEndtypeController()->setEndtypeIdEnd(element, endtypeId);
-
virtual void setEndtypeIdFac(elementID aElementId, endtypeID aEndtypeId, uint32_t aFaceNumber) = 0
Sets the endtype to a face by endtype id.
- Example:
ICwAPI3DElementIDList* selectedElements = aFactory.getElementController()->getAllIdentifiableElementIDs(); if (selectedElements->count()) == 0) return; ICwAPI3DElementID element = selectedElements->at(0); const endtypeID endtypeId = 67890; const int faceNumber = 3; aFactory.getEndtypeController()->setEndtypeIdFacet(element, endtypeId, faceNumber);
Note
Endtypes can only be set on faces that are placed at start or end points. Endtypes cannot be placed on arbitrary faces.
-
virtual endtypeID createNewEndtype(const character *aEndtypeName, uint32_t aEndtypeId, const character *aFolderName) = 0
Creates a new Endtype.
- Example:
// Create a new endtype with a custom name, ID, and folder const character* endtypeName = L"Custom_Joint_80x40"; const endtypeID endtypeIDValue = 99999; const character* folderName = L"Custom_Joints"; // Register the new endtype const endtypeID newID = aFactory.getEndtypeController()->createNewEndtype( endtypeName, endtypeIDValue, folderName ); // Output the newly created ID printf("Created endtype with ID: %llu\n", newID);
-
virtual void clearErrors() = 0
Clears all errors.
-
virtual ICwAPI3DEndtypeIDList *getExistingTenonIds() = 0
Get the existing tenon endtype id list.
- Example:
ICwAPI3DEndtypeIDList* tenonIds = aFactory.getEndtypeController()->getExistingTenonIds(); printf("Available tenon endtype IDs: %s", tenonIds);
- Returns:
[ICwAPI3DEndtypeIDList*] List of existing tenon endtype id.
-
virtual ICwAPI3DEndtypeIDList *getExistingLengtheningIds() = 0
Get the existing lengthening endtype id list.
- Example:
ICwAPI3DEndtypeIDList* lengtheningIds = aFactory.getEndtypeController()->getExistingLengtheningIds(); printf("Available lengthening endtype IDs: %s", lengtheningIds);
- Returns:
[ICwAPI3DEndtypeIDList*] List of existing lengthening endtype id.
-
virtual ICwAPI3DEndtypeIDList *getExistingDovetailIds() = 0
Get the existing dovetail endtype id list.
- Example:
ICwAPI3DEndtypeIDList* dovetailIds = aFactory.getEndtypeController()->getExistingDovetailIds(); printf("Available dovetail endtype IDs: %s", dovetailIds);
- Returns:
[ICwAPI3DEndtypeIDList*] List of existing dovetail endtype id.
-
virtual ICwAPI3DEndtypeIDList *getExistingDovetailDadoIds() = 0
Get the existing dado endtype id list.
- Example:
ICwAPI3DEndtypeIDList* dadoIds = aFactory.getEndtypeController()->getExistingDovetailDadoIds(); printf("Available dado endtype IDs: "); for (int i = 0; i < dadoIds->count(); ++i) { printf("%d ", dadoIds->at(i)); } printf("\n");
- Returns:
[ICwAPI3DEndtypeIDList*] List of existing dado endtype id.
-
virtual ICwAPI3DEndtypeIDList *getExistingJapaneseTenonIds() = 0
Get the existing japanese-tenon endtype id list.
- Example:
ICwAPI3DEndtypeIDList* japaneseTenonIds = aFactory.getEndtypeController()->getExistingJapaneseTenonIds(); printf("Available japanese-tenon endtype IDs: %s", japaneseTenonIds);
- Returns:
[ICwAPI3DEndtypeIDList*] List of existing japanese-tenon endtype id.
-
virtual ICwAPI3DString *getLastError(int32_t *aErrorCode) = 0