Arc3D

This class represents the abstract concept Arc3D.

Class

class GeometricItem
   relation material
      range Material, cardinality [0, 1]
class Curve
class Arc3D
   property radius
      range double (64 bit), cardinality [1, 1]
   property start
      range double (64 bit), cardinality [0, 1]
   property size
      range double (64 bit), cardinality [0, 1]
   property segmentationParts
      range integer (64 bit), cardinality [0, 1]
   property hasNormals
      range bool, cardinality [0, 1]    

Example

Here you can find code snippits that show how the API call Arc3D can be used.

#include "engine/include/engine.h"

int64_t model = CreateModel();

if (model) {
    //
    //  Classes
    //
    int64_t classArc3D = GetClassByName(model, "Arc3D");

    //
    //  Datatype Properties (attributes)
    //
    int64_t propertyRadius = GetPropertyByName(model, "radius"),
            propertyStart = GetPropertyByName(model, "start"),
            propertySize = GetPropertyByName(model, "size"),
            propertySegmentationParts = GetPropertyByName(model, "segmentationParts");

    //
    //  Instances (creating)
    //
    int64_t myInstanceArc3D = CreateInstance(classArc3D, nullptr);

    double  radius = 1.3,
            start = 1.57079633,
            size = 3.14159265;
    int64_t segmentationParts = 36;
        
    SetDatatypeProperty(myInstanceArc3D, propertyRadius, &radius, 1);
    SetDatatypeProperty(myInstanceArc3D, propertyStart, &start, 1);
    SetDatatypeProperty(myInstanceArc3D, propertySize, &size, 1);
    SetDatatypeProperty(myInstanceArc3D, propertySegmentationParts, &segmentationParts, 1);

    //
    //  The resulting model can be viewed in 3D-Editor.exe
    //
    SaveModel(model, "c:\\created\\myArc3D.bin");
    CloseModel(model);
}