GetClassByNameW
When there is no class with such a name the return value is 0 (note that GetModellingStyle(..) can change this behavior).
Syntax
// // Strong typing definition // OwlClass GetClassByNameW( OwlModel model, const wchar_t * name ); static inline OwlClass GetClassByNameW( OwlModel model, wchar_t * name ) { return GetClassByNameW( model, (const wchar_t*) name ); } // // Weak typing definition // int64_t __declspec(dllexport) __stdcall GetClassByNameW( int64_t model, const wchar_t * name ); static inline int64_t GetClassByNameW( int64_t model, wchar_t * name ) { return GetClassByNameW( model, (const wchar_t*) name ); }
Property model
Size: 64 bit / 8 byte (value)Property name
Size: 64 bit / 8 byte (reference)
Example (based on pure API calls)
Here you can find code snippits that show how the API call GetClassByNameW can be used.
#include "./include/engine.h" #include <cmath> int64_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); }