![]()  | 
  
    3DCoat Core API
    
   The 3DCoat API documentation. 
   | 
 
lathe primitive More...
#include <CorePrimAPI.h>
  
Public Types | |
| enum | pointState {  regular =0 , bspline =1 , sharp =2 , locked =3 , vertical =4 , horizontal =5 }  | 
| enumeration of the point state for a lathe profile.  | |
| enum | Type { cylinder =0 , rectangle =1 } | 
| enumeration of the lathe type.  | |
Public Member Functions | |
| lathe () | |
| constructs a new lathe object.  | |
| ~lathe () | |
| object destructor.  | |
| lathe & | type (const lathe::Type &t) | 
| set the lathe type   | |
| lathe::Type | type () const | 
| get the lathe type.   | |
| lathe & | add_point (const vec2 &point, int st) | 
| add the point into curve   | |
| curve2d * | profile () const | 
| get the pointer to the profile   | |
| lathe & | reset () | 
| reset the curve points  | |
| lathe & | clear () | 
| clear points of the profile  | |
  Public Member Functions inherited from coat::box | |
| box () | |
| constructs a new box object.  | |
| box (float sizeX, float sizeY, float sizeZ) | |
| constructs a new box object.   | |
| box (const vec3 &size) | |
| constructs a new box object.   | |
| box (const vec3 &pos, const vec3 &size) | |
| constructs a new box object.   | |
| box (const vec3 &pos, const vec3 &size, float fillet) | |
| constructs a new box object.   | |
| box & | axis (const vec3 &directionX) | 
| set the x-direction   | |
| box & | axis (const vec3 &directionX, const vec3 &directionY) | 
| set the x and y direction   | |
| box & | axis (const vec3 &directionX, const vec3 &directionY, const vec3 &directionZ) | 
| set the x, y and z direction   | |
| box & | reset_axis () | 
| reset the x, y and z direction   | |
| vec3 | axis_x () | 
| get the x-axis   | |
| vec3 | axis_y () | 
| get the y-axis   | |
| vec3 | axis_z () | 
| get the z-axis   | |
| box & | divide (int nx, int ny, int nz) | 
| set the number deviding   | |
| box & | size (const vec3 &_size) | 
| set the box size   | |
| box & | size (float x, float y, float z) | 
| set the box size   | |
| vec3 | size () const | 
| get the box size.   | |
| virtual float | fillet_relative () | 
| calculates a fillet relative value (0..1).   | |
  Public Member Functions inherited from coat::prim | |
| prim () | |
| constructs a new prim object.  | |
| str | class_name () | 
| get the primitive class name.  | |
| prim & | name (const char *s) | 
| set the primitive object name.   | |
| str | name () const | 
| get the primitive object name.  | |
| void | add (Volume &v) | 
| add the prim into scene   | |
| void | subtract (Volume &v) | 
| subtract the prim from scene   | |
| void | intersect (Volume &v) | 
| intersect the prim into scene   | |
| void | merge (Volume &v, const BoolOpType op) | 
| merge the prim into scene   | |
| Mesh | mesh () | 
| get the mesh prim   | |
| prim & | color (DWORD CL) | 
| assign the color to the primitive (in voxels)   | |
| prim & | color (float r, float g, float b, float a) | 
| assign the color to the primitive (in voxels)   | |
| prim & | color (float r, float g, float b) | 
| assign the color to the primitive (in voxels)   | |
| prim & | color (const char *colorid) | 
| assign the color to the primitive (in voxels)   | |
| prim & | gloss (float value) | 
| assign the gloss for the voxel primitive, it will work only if the color already assigned   | |
| prim & | roughness (float value) | 
| assign the roughness for the voxel primitive, it will work only if the color already assigned   | |
| prim & | metal (float value) | 
| the metalliclty value for the voxel primitive, it will work only if the color already assigned   | |
| prim & | opacity (float value) | 
| assign the opacity of the color over the voxel primitive. The color should be assigned before you assign the opacity, for example p.color("red").opacity(0.5)   | |
| prim & | details (const float det_level) | 
| set the detail level   | |
| float | details () | 
| get the detail level   | |
| prim & | transform (const mat4 &t) | 
| set the transform matrix   | |
| mat4 | transform () const | 
| get the transform matrix   | |
| prim & | scale (float scale) | 
| set the scale   | |
| prim & | scale (const vec3 &v) | 
| set the scale   | |
| vec3 | scale () const | 
| get the scale   | |
| prim & | translate (const vec3 &_pos) | 
| Set the primitive translation.   | |
| vec3 | translate () const | 
| get the primitive translation   | |
| prim & | translate (float x, float y, float z) | 
| Set the primitive translation.   | |
| prim & | x (float x) | 
| shift the primitive along the x - axis   | |
| prim & | y (float y) | 
| shift the primitive along the y - axis   | |
| prim & | z (float z) | 
| shift the primitive along the z - axis   | |
| prim & | auto_divide (float average_div) | 
| set the auto devide   | |
| prim & | step_divide (float step) | 
| set the step devide   | |
| prim & | fillet (float radius) | 
| set the fillet   | |
| template<typename T > | |
| T & | Obj () | 
| Get the primitive object reference.   | |
| template<typename T > | |
| bool | isAs () | 
| Check the prim's type.   | |
Protected Member Functions | |
| virtual cMeshContainer * | create_mesh () | 
| creates a mesh container for the text.   | |
  Protected Member Functions inherited from coat::box | |
| void | init () | 
| initialize the default parameters  | |
  Protected Member Functions inherited from coat::prim | |
| template<class T > | |
| T & | to_cast_this () | 
| cast this prim to the obj type T   | |
| void | merge_debug (Volume &vol, Mesh &mesh) | 
| merge the mesh debug into scene   | |
Additional Inherited Members | |
  Static Public Member Functions inherited from coat::prim | |
| static void | debug_on (bool isOn=true) | 
| indicates whether to turn on or off the debug mode.   | |
| static void | debug_clear () | 
| clear the debug info for primitive operations  | |
| static void | push_transform (const mat4 &t) | 
| set the global transform matrix to all primitives   | |
| static void | push_translate (const vec3 &d) | 
| Set the translation to all primitives.   | |
| static void | push_scale (float scale) | 
| Set the scale to all primitives.   | |
| static void | push_scale (const vec3 &s) | 
| Set the scale to all primitives.   | |
| static void | push_details (float details_modulator) | 
| set the detail level to all primitives   | |
| static void | reset_transform () | 
| reset the global transform matrix   | |
  Protected Attributes inherited from coat::prim | |
| prim * | _this | 
lathe primitive
add the point into curve
| point | the 2d point | 
| st | the point state | 
      
  | 
  protectedvirtual | 
| curve2d * coat::lathe::profile | ( | ) | const | 
get the pointer to the profile
| lathe::Type coat::lathe::type | ( | ) | const | 
get the lathe type.
| lathe & coat::lathe::type | ( | const lathe::Type & | t | ) | 
set the lathe type
| t | type value (cylinder or rectangle) |