GetClassByNameW
When the class does not exist yet and the name is unique
the class will be created on the fly and the handle will be returned.
When the name is not unique and given to an instance, objectTypeProperty
or dataTypeProperty 0 will be returned.
Syntax
// Visual Studio for Windows public: __int64 __declspec(dllexport) __stdcall GetClassByNameW( __int64 model, const wchar_t * name ); // Linux, OS-X and non-Visual Studio Windows solutions public: int64_t GetClassByNameW( int64_t model, const wchar_t * name );
Property model
Size: 64 bit / 8 byte (value)Property name
Size: 64 bit / 8 byte (reference)
Example
Here you can find code snippits that show how the API call GetClassByNameW can be used.
#includeint64_t model = CreateModel(); if (model) { // // Classes // int64_t classArc3D = GetClassByNameW(model, L"Arc3D"); // // Datatype Properties (attributes) // int64_t propertyRadius = GetPropertyByNameW(model, L"radius"), propertyStart = GetPropertyByNameW(model, L"start"), propertySize = GetPropertyByNameW(model, L"size"), propertySegmentationParts = GetPropertyByNameW(model, L"segmentationParts"); // // Instances (creating) // int64_t myInstanceArc3D = CreateInstanceW(classArc3D, nullptr); double Pi = 2. * acos(0.), radius = 2.1, start = 0., size = 2. * Pi; int64_t segmentationParts = 36; SetDatatypeProperty(myInstanceArc3D, propertyRadius, &radius, 1); SetDatatypeProperty(myInstanceArc3D, propertyStart, &start, 1); // in this case we could also do without, i.e. default value SetDatatypeProperty(myInstanceArc3D, propertySize, &size, 1); // in this case we could also do without, i.e. default value SetDatatypeProperty(myInstanceArc3D, propertySegmentationParts, &segmentationParts, 1); // // The resulting model can be viewed in 3D-Editor.exe // SaveModelW(model, L"c:\\created\\myFile.bin"); CloseModel(model); }