r3subdiv

r3subdiv

Class

real/objects/r3subdiv.h

Library

r3obj

Description:

Sub division surface

See Also

real/objects/r3level.h

See Also

real/objects/r3triset.h real/raytr/r3cmetnu.h

Super Class

r3Level

R3CLID_LEVEL

JavaScript

r3Subdivision

Class Identifier

R3CLID_SUBDIVISION - 1235

Methods

ADDFACE, MERGEVERTICES, SUBDIVIDE, SUBDIVIDEFACE, EXTRUDE, GETMAXEDGESPERFACE, SPLITEDGE, DIVIDEFACE, MERGEFACES, SETUV, GETUV, SEPARATEFACES, RETURNFACEPOINTS, NEWFACE, DELFACE, UPDATEFACE, MELT, EXTRUDEVERTEX, MERGEOBJECTS, HIDESELECTEDFACES, SHOWALLFACES, CONNECTEDGES, TRANSFORMFACE, DUPLICATEANDCONNEC, BEVELVERTICES, BEVELEDGES, FACETOTRISETS, FLIPSELECTEDFACES, ADDUVWCHANNEL, DELUVWCHANNEL, MERGEEDGES, DESTROYFACE, MERGEOBJECTSSELECT, POLYGONALTOTRISETS, SMOOTHTOTRISETS, FACESTOTRIANGLES, SELECTEDFACESTOQUA, FACESCHANGEDFROMOU, MAKETUNNEL, SUBDIVIDELOCALLY, CALCULATEVERTEXNOR, MOVEVERTEXONNORMAL, INVALIDATESMOOTHOB, CALCULATEEDGECENTE, TRANSFORMEDGE, SELECTINVALIDFACES, SMOOTHENVERTEXNORM, FLATTENVERTEXNORMA, SETPOINTWISEVALUE, GETPOINTWISEVALUE, ADDPOINTWISEATTRIB, REMOVEPOINTWISEATT, GETWEIGHTS, CHANGEWEIGHTS, COPYSELECTEDPOINTS, TRIANGLESTOQUADS, INVERT, RENDERPATCHES, SETSELECTEDEDGESHA, GETEDGESHARPNESS, SETSELECTEDVERTEXS, GETVERTEXSHARPNESS, CREATEEDGELIST, FREEEDGELIST, SETSELECTEDEDGEROU, GETEDGEROUNDING, JOINFACES, GETPOINTWISECHANNE, GETFACESPACE, GETUVWATTRS, GETCHANNELATTRS, ALLOCPOINTS, ASSIGNVERTEX, MAKEFACE, ATTACHMATERIALTOSE, DETACHMATFROMSELFA, GETFACEMATERIALLIS, OPTIMIZEFACES, MOVEFACEMATERIALBE, MOVEFACEMATERIALAF, ENUMFACEVERTICES, UNSELECTHANDLES, SETSELECTEDFACEMAT, INSERTVERTEXTOFACE, REMOVEVERTEXFROMFA, SETSELECTEDFACESUV, SETALLFACESUVVISIB, SETFACEMATERIALUV, DETACHMATFROMALLFA, GETVERTEXCOUNTOFFA, INTERPOLATEPOINTWI, DIVIDEFACESBYINDIC, CALCULATEFACECENTE, DUPLICATE, COPYSELECTED, SETFACE, FILLHOLES, UNWRAPUV, DEFAULTUV, DELETEORPHANVERTIC, SETPOINTLOCAL, GETPOINTLOCAL, ALLOCFACEID, REGISTERNOTIFY, UNREGISTERNOTIFY, UNWRAPGEOMETRY, DUPLICATEANDMIRROR, GETFACECENTERANDNO, AUTOINITIALIZEFACE, RENAMEFACEMATERIAL, GETMAXEDGESPERVERT, FACESTOTRIANGLESSM, WELD, GETFACE, FLATTEN, AUTOCREASES, GETFACEINDEX,

Attributes

PointCount, Points, FaceCount, Type, SelectResolution, SelectedFaces, SelectedEdges, SelectedVertices, EdgeCount, UVCoords, Quality, HiddenFaces, CurrentUVName, WrapU, WrapV, HiddenVertices, SmoothVertices, Weights, FloatSize, ColorSize, PointwiseColor, PointwiseTranspare, PointwiseReflectio, PointwiseAlpha, PointwiseFade, PointwiseIlluminat, PointwiseMatSpaceC, PointwiseOpticalTh, PointwiseScope, PointwiseVolumeSam, InterpolateBoundar, VertexSharpness, HasRoundings, CurrentFaceMateria, ChannelList, PointwiseUVCoords, SelectedFaceVertic, SelectFaceVertices, VertexUVsInFaceMod, HiddenUVFaces, PhongShade, MaxDisplacement, NextFaceId, MinimizedOutlines, MaterialRendering, ForceTessellation,

R3SDSMAXWEIGHT
R3SDSMINWEIGHT
R3SDS_MAXMATERIALSPERFACE

R3SUBDIVM_ADDFACE

Method

ADDFACE

Identifier

R3SUBDIVM_ADDFACE

JavaScript

obj.ADDFACE();

Description

adds a face between n selected vertices

R3SUBDIVM_MERGEVERTICES

Method

MERGEVERTICES

Identifier

R3SUBDIVM_MERGEVERTICES

JavaScript

obj.MERGEVERTICES();

Description

merges selected vertices

R3SUBDIVM_SUBDIVIDE

Method

SUBDIVIDE

Identifier

R3SUBDIVM_SUBDIVIDE

Param 3:

R3INT, number of iterations, >0

JavaScript

obj.SUBDIVIDE(p3);

Description

subdivides the whole object

R3SUBDIVM_SUBDIVIDEFACE

Method

SUBDIVIDEFACE

Identifier

R3SUBDIVM_SUBDIVIDEFACE

JavaScript

obj.SUBDIVIDEFACE();

Description

subdivides selected faces

R3SUBDIVM_EXTRUDE

Method

EXTRUDE

Identifier

R3SUBDIVM_EXTRUDE

Return

R3BOOL, true if succeeded

Param 1:

R3FLOAT, extrusion depth

Param 2:

R3INT, action, see r3subdivisionaction below

Param 3:

R3TAG*, tag list containing R3SUBDIVA_ExtrudeRegionOpt, R3SUBDIVA_ExtrudeNormalOpt, R3SUBDIVA_ExtrudeLeaveFloor, R3SUBDIVA_ExtrudeSectionCount.

JavaScript

rc = obj.EXTRUDE(p1, p2, p3);

Description

extrudes selected edges or faces

R3SUBDIVM_GETMAXEDGESPERFACE

Method

GETMAXEDGESPERFACE

Identifier

R3SUBDIVM_GETMAXEDGESPERFACE

Return

R3INT, max edgecount

JavaScript

rc = obj.GETMAXEDGESPERFACE();

Description

return the number of edges of the face that has the most edges.

R3SUBDIVM_SPLITEDGE

Method

SPLITEDGE

Identifier

R3SUBDIVM_SPLITEDGE

JavaScript

obj.SPLITEDGE();

Description

splits the selected edges.

R3SUBDIVM_DIVIDEFACE

Method

DIVIDEFACE

Identifier

R3SUBDIVM_DIVIDEFACE

JavaScript

obj.DIVIDEFACE();

Description

divides face between two selected vertices.

R3SUBDIVM_MERGEFACES

Method

MERGEFACES

Identifier

R3SUBDIVM_MERGEFACES

JavaScript

obj.MERGEFACES();

Description

merges selected faces.

R3SUBDIVM_SETUV

Method

SETUV

Identifier

R3SUBDIVM_SETUV

JavaScript

obj.SETUV();

Description

Set given UV coordinates for the selected vertices

R3SUBDIVM_GETUV

Method

GETUV

Identifier

R3SUBDIVM_GETUV

Return

R3BOOL, true if succeeded

Param 1:

R3VECTOR, uv coordinates

Param 3:

R3INT, index of the vertex

JavaScript

rc = obj.GETUV(p1, p3);

Description

Fetch the uv coordinates of the given vertex

R3SUBDIVM_SEPARATEFACES

Method

SEPARATEFACES

Identifier

R3SUBDIVM_SEPARATEFACES

JavaScript

obj.SEPARATEFACES();

Description

separates the selected edges.

R3SUBDIVM_RETURNFACEPOINTS

Method

RETURNFACEPOINTS

Identifier

R3SUBDIVM_RETURNFACEPOINTS

JavaScript

obj.RETURNFACEPOINTS();

Description

same as R3PRIMM_GETFACEPOINTLOOP, see r3prim.h

R3SUBDIVM_NEWFACE

Method

NEWFACE

Identifier

R3SUBDIVM_NEWFACE

JavaScript

obj.NEWFACE();

Description

creates an empty face (no vertices)

R3SUBDIVM_DELFACE

Method

DELFACE

Identifier

R3SUBDIVM_DELFACE

Param 3:

R3INT, face index

JavaScript

obj.DELFACE(p3);

Description

deletes a face

R3SUBDIVM_UPDATEFACE

Method

UPDATEFACE

Identifier

R3SUBDIVM_UPDATEFACE

Param 3:

R3INT, face index

JavaScript

obj.UPDATEFACE(p3);

Description

modifies the specified face (index in p3) to contain selected vertices

R3SUBDIVM_MELT

Method

MELT

Identifier

R3SUBDIVM_MELT

JavaScript

obj.MELT();

Description

melts faces together by removing separating edges. * Action depends on select resolution.

R3SUBDIVM_EXTRUDEVERTEX

Method

EXTRUDEVERTEX

Identifier

R3SUBDIVM_EXTRUDEVERTEX

Param 1:

R3FLOAT, percentage of subdivide (distance from original vertex along the edge)

Param 3:

R3FLOAT, amount of extrude

JavaScript

obj.EXTRUDEVERTEX(p1, p3);

Description

extrudes the selected vertices

R3SUBDIVM_MERGEOBJECTS

Method

MERGEOBJECTS

Identifier

R3SUBDIVM_MERGEOBJECTS

Param 1:

R3BOOL, save faceids

Param 3:

R3OBJ**, null terminated array of objects to be merged

JavaScript

obj.MERGEOBJECTS(p1, p3);

Description

Merges the selected subdivision objects into one.

R3SUBDIVM_HIDESELECTEDFACES

Method

HIDESELECTEDFACES

Identifier

R3SUBDIVM_HIDESELECTEDFACES

JavaScript

obj.HIDESELECTEDFACES();

Description

Hides the selected faces.

R3SUBDIVM_SHOWALLFACES

Method

SHOWALLFACES

Identifier

R3SUBDIVM_SHOWALLFACES

JavaScript

obj.SHOWALLFACES();

Description

Un-hides all faces.

R3SUBDIVM_CONNECTEDGES

Method

CONNECTEDGES

Identifier

R3SUBDIVM_CONNECTEDGES

JavaScript

obj.CONNECTEDGES();

Description

Connects two selected edges with a new face.

R3SUBDIVM_TRANSFORMFACE

Method

TRANSFORMFACE

Identifier

R3SUBDIVM_TRANSFORMFACE

Param 1:

R3VECTOR, the components are used to define: r - amount of rotation s - scale factor t - amount of translation

Param 2:

R3INT, normal option, either R3SDSTRANSFFACENORMALOPT_FACE or R3SDSTRANSFFACENORMALOPT_GROUP

Param 3:

R3TAG*, tag list containing R3SUBDIVA_TransformCenter, R3SUBDIVA_TransformNormal, R3SUBDIVA_ScaleDirection

JavaScript

obj.TRANSFORMFACE(p1, p2, p3);

Description

Transforms selected faces.

R3SUBDIVM_DUPLICATEANDCONNEC

Method

DUPLICATEANDCONNEC

Identifier

R3SUBDIVM_DUPLICATEANDCONNEC

JavaScript

obj.DUPLICATEANDCONNEC();

Description

Copies the the faces and connects the edges.

R3SUBDIVM_BEVELVERTICES

Method

BEVELVERTICES

Identifier

R3SUBDIVM_BEVELVERTICES

Param 3:

R3FLOAT, percentage of bevel (distance from original vertex along the edge)

JavaScript

obj.BEVELVERTICES(p3);

Description

Bevels selected vertices

R3SUBDIVM_BEVELEDGES

Method

BEVELEDGES

Identifier

R3SUBDIVM_BEVELEDGES

Param 3:

R3FLOAT, percentage of bevel (distance from original vertex along the edge)

JavaScript

obj.BEVELEDGES(p3);

Description

Bevels selected edges

R3SUBDIVCM_FACETOTRISETS

Method

FACETOTRISETS

Identifier

R3SUBDIVCM_FACETOTRISETS

Return

R3INT, number of resulting triset faces

Param 2:

R3VECTOR, vertices

Param 3:

R3TAG*, attributes R3SUBDIVA_TrisetFace, R3SUBDIVA_KeepAllPoints, R3SUBDIVA_UVCoords, R3SUBDIVA_OriginalIndices.

JavaScript

rc = obj.FACETOTRISETS(0, p2, p3);

Description

Converts a face to trisets

R3SUBDIVM_FLIPSELECTEDFACES

Method

FLIPSELECTEDFACES

Identifier

R3SUBDIVM_FLIPSELECTEDFACES

Param 3:

R3BOOL, regions flag. If set, flips opposing faces in each selection region.

JavaScript

obj.FLIPSELECTEDFACES(p3);

Description

Flips the normals of the selected faces by changing the * order in which the vertices are referenced.

R3SUBDIVM_ADDUVWCHANNEL

Method

ADDUVWCHANNEL

Identifier

R3SUBDIVM_ADDUVWCHANNEL

Return

void*, NULL if failed

Param 3:

R3TAG*, R3SUBDIVA_WrapU, R3SUBDIVA_WrapV, R3SUBDIVA_UVWrapMin, R3SUBDIVA_UVWrapMax, R3SUBDIVA_UVCoords

JavaScript

rc = obj.ADDUVWCHANNEL(p3);

Description

Add new uvw channel

R3SUBDIVM_DELUVWCHANNEL

Method

DELUVWCHANNEL

Identifier

R3SUBDIVM_DELUVWCHANNEL

Return

R3BOOL, NULL if channel was not found

Param 3:

char*, name of the channel to be deleted

JavaScript

rc = obj.DELUVWCHANNEL(p3);

Description

Delete uvw channel

R3SUBDIVM_MERGEEDGES

Method

MERGEEDGES

Identifier

R3SUBDIVM_MERGEEDGES

JavaScript

obj.MERGEEDGES();

Description

merges selected edges (only if topology does not change).

R3SUBDIVM_DESTROYFACE

Method

DESTROYFACE

Identifier

R3SUBDIVM_DESTROYFACE

Param 3:

R3BOOL, if TRUE vertices that become orphan are not deleted.

JavaScript

obj.DESTROYFACE(p3);

Description

destroys faces.

R3SUBDIVM_MERGEOBJECTSSELECT

Method

MERGEOBJECTSSELECT

Identifier

R3SUBDIVM_MERGEOBJECTSSELECT

Param 3:

R3OBJ**, null terminated array of objects to be merged

JavaScript

obj.MERGEOBJECTSSELECT(p3);

Description

Merges the selected subdivision objects into one. * All vertices and faces of the first selected object * and selected vertices and selected faces of the other * selected objects are merged.

R3SUBDIVM_POLYGONALTOTRISETS

Method

POLYGONALTOTRISETS

Identifier

R3SUBDIVM_POLYGONALTOTRISETS

Return

R3BOOL, TRUE if successfull

Param 3:

R3INT*, returns the number of faces.

JavaScript

rc = obj.POLYGONALTOTRISETS(p3);

Description

Converts polygonal SDS to trisets.

R3SUBDIVM_SMOOTHTOTRISETS

Method

SMOOTHTOTRISETS

Identifier

R3SUBDIVM_SMOOTHTOTRISETS

Return

R3BOOL, TRUE if successfull

Param 3:

R3INT*, returns the number of faces.

JavaScript

rc = obj.SMOOTHTOTRISETS(p3);

Description

Converts smooth SDS to trisets.

R3SUBDIVM_FACESTOTRIANGLES

Method

FACESTOTRIANGLES

Identifier

R3SUBDIVM_FACESTOTRIANGLES

Return

R3BOOL, TRUE if successfull

Param 3:

R3BOOL, if TRUE processes all faces

JavaScript

rc = obj.FACESTOTRIANGLES(p3);

Description

Divides faces to triangles. Uses the face center to divide. If p3 is TRUE, then all faces are processed, otherwise only the selected faces.

R3SUBDIVM_SELECTEDFACESTOQUA

Method

SELECTEDFACESTOQUA

Identifier

R3SUBDIVM_SELECTEDFACESTOQUA

Return

R3BOOL, TRUE if successfull

Param 3:

R3BOOL, if TRUE processes all faces

JavaScript

rc = obj.SELECTEDFACESTOQUA(p3);

Description

Divides the selected faces to quads. Uses the face center to divide.

R3SUBDIVM_FACESCHANGEDFROMOU

Method

FACESCHANGEDFROMOU

Identifier

R3SUBDIVM_FACESCHANGEDFROMOU

JavaScript

obj.FACESCHANGEDFROMOU();

Description

If you have to manipulate the face array directly, call this to inform the sds object.

R3SUBDIVM_MAKETUNNEL

Method

MAKETUNNEL

Identifier

R3SUBDIVM_MAKETUNNEL

Return

R3BOOL, TRUE if successfull

JavaScript

rc = obj.MAKETUNNEL();

Description

Make tunnel between selected faces

R3SUBDIVM_SUBDIVIDELOCALLY

Method

SUBDIVIDELOCALLY

Identifier

R3SUBDIVM_SUBDIVIDELOCALLY

Return

R3BOOL, TRUE if successfull

JavaScript

rc = obj.SUBDIVIDELOCALLY();

Description

Subdivides selected regions.

R3SUBDIVM_CALCULATEVERTEXNOR

Method

CALCULATEVERTEXNOR

Identifier

R3SUBDIVM_CALCULATEVERTEXNOR

Return

R3BOOL, TRUE if successfull

Param 1:

R3BOOL, if TRUE the normal lengths will be scaled according to the * face sizes, otherwise the normals will be normalized * (length 1.0).

Param 3:

R3VECTOR, the vertex normals are returned here

JavaScript

rc = obj.CALCULATEVERTEXNOR(p1, p3);

Description

Calculates vertex normals.

R3SUBDIVM_MOVEVERTEXONNORMAL

Method

MOVEVERTEXONNORMAL

Identifier

R3SUBDIVM_MOVEVERTEXONNORMAL

Param 1:

R3FLOAT, amount of translation

Param 3:

R3VECTOR, direction

JavaScript

obj.MOVEVERTEXONNORMAL(p1, p3);

Description

Moves the selected faces along vertex normals.

R3SUBDIVM_INVALIDATESMOOTHOB

Method

INVALIDATESMOOTHOB

Identifier

R3SUBDIVM_INVALIDATESMOOTHOB

JavaScript

obj.INVALIDATESMOOTHOB();

Description

Invalidates internal smooth object used for evaluating the * SDS geometry

R3SUBDIVM_CALCULATEEDGECENTE

Method

CALCULATEEDGECENTE

Identifier

R3SUBDIVM_CALCULATEEDGECENTE

Return

R3BOOL, TRUE if successfull

Param 1:

R3VECTOR, the edge centers are returned here

Param 2:

R3BOOL, if TRUE the normal lengths will be scaled according to the * edge lengths, otherwise the normals will be normalized * (length 1.0).

Param 3:

R3VECTOR, the edge normals are returned here

JavaScript

rc = obj.CALCULATEEDGECENTE(p1, p2, p3);

Description

Calculates edge centers and normals.

R3SUBDIVM_TRANSFORMEDGE

Method

TRANSFORMEDGE

Identifier

R3SUBDIVM_TRANSFORMEDGE

Param 1:

R3VECTOR, the components are used to define: r - amount of rotation s - scale factor t - amount of translation

Param 2:

R3INT, normal option, either R3SDSTRANSFFACENORMALOPT_FACE or R3SDSTRANSFFACENORMALOPT_GROUP

Param 3:

R3TAG*, tag list containing R3SUBDIVA_TransformCenter, R3SUBDIVA_TransformNormal

JavaScript

obj.TRANSFORMEDGE(p1, p2, p3);

Description

Transforms selected edges.

R3SUBDIVM_SELECTINVALIDFACES

Method

SELECTINVALIDFACES

Identifier

R3SUBDIVM_SELECTINVALIDFACES

JavaScript

obj.SELECTINVALIDFACES();

Description

Selects faces that have edges where more than two faces connect.

R3SUBDIVM_SMOOTHENVERTEXNORM

Method

SMOOTHENVERTEXNORM

Identifier

R3SUBDIVM_SMOOTHENVERTEXNORM

JavaScript

obj.SMOOTHENVERTEXNORM();

Description

Smoothens the normals of the selected vertices,

R3SUBDIVM_FLATTENVERTEXNORMA

Method

FLATTENVERTEXNORMA

Identifier

R3SUBDIVM_FLATTENVERTEXNORMA

JavaScript

obj.FLATTENVERTEXNORMA();

Description

Smoothens the normals of the selected vertices,

R3SUBDIVM_SETPOINTWISEVALUE

Method

SETPOINTWISEVALUE

Identifier

R3SUBDIVM_SETPOINTWISEVALUE

JavaScript

obj.SETPOINTWISEVALUE();

Description

R3SUBDIVM_GETPOINTWISEVALUE

Method

GETPOINTWISEVALUE

Identifier

R3SUBDIVM_GETPOINTWISEVALUE

JavaScript

obj.GETPOINTWISEVALUE();

Description

R3SUBDIVM_ADDPOINTWISEATTRIB

Method

ADDPOINTWISEATTRIB

Identifier

R3SUBDIVM_ADDPOINTWISEATTRIB

JavaScript

obj.ADDPOINTWISEATTRIB();

Description

add pointwise attribute

R3SUBDIVM_REMOVEPOINTWISEATT

Method

REMOVEPOINTWISEATT

Identifier

R3SUBDIVM_REMOVEPOINTWISEATT

JavaScript

obj.REMOVEPOINTWISEATT();

Description

remove pointwise attribute

R3SUBDIVM_GETWEIGHTS

Method

GETWEIGHTS

Identifier

R3SUBDIVM_GETWEIGHTS

Return

R3FLOAT, weights

JavaScript

rc = obj.GETWEIGHTS();

Description

R3SUBDIVM_CHANGEWEIGHTS

Method

CHANGEWEIGHTS

Identifier

R3SUBDIVM_CHANGEWEIGHTS

Param 1:

R3BOOL, if true, p3 translates the current weight. Otherwise p3 is taken as new absolute weight for the selected vertices.

Param 3:

R3FLOAT, abs/rel weight

JavaScript

obj.CHANGEWEIGHTS(p1, p3);

Description

Translate the weights of the selected vertices.

R3SUBDIVM_COPYSELECTEDPOINTS

Method

COPYSELECTEDPOINTS

Identifier

R3SUBDIVM_COPYSELECTEDPOINTS

Return

R3BOOL, true if succeeded

JavaScript

rc = obj.COPYSELECTEDPOINTS();

Description

Copy the currently selected vertices.

R3SUBDIVM_TRIANGLESTOQUADS

Method

TRIANGLESTOQUADS

Identifier

R3SUBDIVM_TRIANGLESTOQUADS

JavaScript

obj.TRIANGLESTOQUADS();

Description

Converts selected triangular faces to quads.

R3SUBDIVM_INVERT

Method

INVERT

Identifier

R3SUBDIVM_INVERT

Param 3:

R3INT, iterations

JavaScript

obj.INVERT(p3);

Description

Run inversion procedure to the sds:

R3SUBDIVM_RENDERPATCHES

Method

RENDERPATCHES

Identifier

R3SUBDIVM_RENDERPATCHES

Param 3:

void*, any appropriate callback context data

JavaScript

obj.RENDERPATCHES(p3);

Description

Describes the surface geometry of SDS object by repeated calls to given hook. * The actions are the same as when sending PRIMM_RENDERSURFACES to the sds object. * The patches are described using the tags of the selected surface type. * See r3sbs3.h, r3sbili.h and r3stri.h (also r3frsurf.h for info about pointwise attributes). * For example, if render type is smoothen to triangles, hook is called as * (*Hook)(R3CLID_STRIANGLE, hookdata, tags), * tags = R3STRIA_Points, vertexarrayof3, * R3STRIA_Normals, normalarrayof3, * R3FRSURFA_PointAttrs, pa_as_defined_in_r3frsurf_h, * R3TAG_END); *

R3SUBDIVM_SETSELECTEDEDGESHA

Method

SETSELECTEDEDGESHA

Identifier

R3SUBDIVM_SETSELECTEDEDGESHA

Param 3:

R3INT, sharpness (0 == rounded, 1 == semisharp, 2 == sharp, * 3 == free, defined by edge rounding

JavaScript

obj.SETSELECTEDEDGESHA(p3);

Description

Sets the sharpness of the selected edges

R3SUBDIVM_GETEDGESHARPNESS

Method

GETEDGESHARPNESS

Identifier

R3SUBDIVM_GETEDGESHARPNESS

Param 1:

R3INT, edge index

Param 3:

R3INT*, returns sharpness

JavaScript

obj.GETEDGESHARPNESS(p1, p3);

Description

Gets the sharpness of the specified edge

R3SUBDIVM_SETSELECTEDVERTEXS

Method

SETSELECTEDVERTEXS

Identifier

R3SUBDIVM_SETSELECTEDVERTEXS

Param 3:

R3INT, sharpness (0 == rounded, 1 == semisharp, 2 == sharp, 3 == free

JavaScript

obj.SETSELECTEDVERTEXS(p3);

Description

Sets the sharpness of the selected vertices

R3SUBDIVM_GETVERTEXSHARPNESS

Method

GETVERTEXSHARPNESS

Identifier

R3SUBDIVM_GETVERTEXSHARPNESS

Param 1:

R3INT, vertex index

Param 3:

R3INT*, returns sharpness

JavaScript

obj.GETVERTEXSHARPNESS(p1, p3);

Description

Gets the sharpness of the specified vertex

R3SUBDIVM_CREATEEDGELIST

Method

CREATEEDGELIST

Identifier

R3SUBDIVM_CREATEEDGELIST

Return

void*, handle

Param 1:

R3BOOL

Param 3:

R3LIST, list containing R3EDGELISTNODE structures.

JavaScript

rc = obj.CREATEEDGELIST(p1, p3);

Description

Creates edge list.

R3SUBDIVM_FREEEDGELIST

Method

FREEEDGELIST

Identifier

R3SUBDIVM_FREEEDGELIST

Param 1:

void*, handle received by CREATEEDGELIST method

Param 3:

R3LIST, list containing unique edges

JavaScript

obj.FREEEDGELIST(p1, p3);

Description

Frees list of unique edges.

R3SUBDIVM_SETSELECTEDEDGEROU

Method

SETSELECTEDEDGEROU

Identifier

R3SUBDIVM_SETSELECTEDEDGEROU

Param 1:

R3BOOL, cumulative

Param 3:

R3FLOAT, rounding

JavaScript

obj.SETSELECTEDEDGEROU(p1, p3);

Description

Sets the rounding of the selected edges

R3SUBDIVM_GETEDGEROUNDING

Method

GETEDGEROUNDING

Identifier

R3SUBDIVM_GETEDGEROUNDING

Param 1:

R3INT, edge index

Param 3:

R3FLOAT, returns rounding

JavaScript

obj.GETEDGEROUNDING(p1, p3);

Description

Gets the rounding of the specified edge

R3SUBDIVM_JOINFACES

Method

JOINFACES

Identifier

R3SUBDIVM_JOINFACES

Param 3:

R3FLOAT, distance

JavaScript

obj.JOINFACES(p3);

Description

Joins edges of separate faces when the edges are near enough each other

R3SUBDIVM_GETPOINTWISECHANNE

Method

GETPOINTWISECHANNE

Identifier

R3SUBDIVM_GETPOINTWISECHANNE

Return

void*, channel data

JavaScript

rc = obj.GETPOINTWISECHANNE();

Description

Returns pointwise channel data

R3SUBDIVM_GETFACESPACE

Method

GETFACESPACE

Identifier

R3SUBDIVM_GETFACESPACE

Param 1:

R3INT, index of the face

Param 3:

R3COORDSYS, space of the face

JavaScript

obj.GETFACESPACE(p1, p3);

Description

Fetch orientation of the given face in object space.

R3SUBDIVM_GETUVWATTRS

Method

GETUVWATTRS

Identifier

R3SUBDIVM_GETUVWATTRS

Return

R3BOOL, true if uvw channel was found

Param 1:

char, channelname

Param 3:

R3TAG*, R3SUBDIVA_WrapU, R3SUBDIVA_WrapV, R3SUBDIVA_UVWrapMin, R3SUBDIVA_UVWrapMax, R3SUBDIVA_UVCoords

JavaScript

rc = obj.GETUVWATTRS(p1, p3);

Description

Fetch uvw channel attributes

R3SUBDIVM_GETCHANNELATTRS

Method

GETCHANNELATTRS

Identifier

R3SUBDIVM_GETCHANNELATTRS

Return

R3BOOL, true if the given channel was found

Param 1:

char, channelname

Param 3:

R3TAG*, R3SUBDIVA_ChannelData, R3SUBDIVA_ChannelUniqueId, R3SUBDIVA_ChannelType, R3SUBDIVA_ChannelItemSize

JavaScript

rc = obj.GETCHANNELATTRS(p1, p3);

Description

Fetch custom channel attributes. R3SUBDIVA_ChannelData points to an array of channel values associated with control points. ChannelItemSize specifies the size of items in R3FLOAT's.

R3SUBDIVM_ALLOCPOINTS

Method

ALLOCPOINTS

Identifier

R3SUBDIVM_ALLOCPOINTS

JavaScript

obj.ALLOCPOINTS();

Description

R3SUBDIVM_ASSIGNVERTEX

Method

ASSIGNVERTEX

Identifier

R3SUBDIVM_ASSIGNVERTEX

Param 1:

R3INT, to

Param 3:

R3INT, from

JavaScript

obj.ASSIGNVERTEX(p1, p3);

Description

Copies a vertex to another vertex.

R3SUBDIVM_MAKEFACE

Method

MAKEFACE

Identifier

R3SUBDIVM_MAKEFACE

Param 1:

R3INT, vertex count

Param 3:

R3INT*, vertex indices

JavaScript

obj.MAKEFACE(p1, p3);

Description

Creates a face to given vertices.

R3SUBDIVM_ATTACHMATERIALTOSE

Method

ATTACHMATERIALTOSE

Identifier

R3SUBDIVM_ATTACHMATERIALTOSE

Param 3:

char*, material name

JavaScript

obj.ATTACHMATERIALTOSE(p3);

Description

Attach material to selected faces.

R3SUBDIVM_DETACHMATFROMSELFA

Method

DETACHMATFROMSELFA

Identifier

R3SUBDIVM_DETACHMATFROMSELFA

Param 3:

char*, material name

JavaScript

obj.DETACHMATFROMSELFA(p3);

Description

Detach material from selected faces.

R3SUBDIVM_GETFACEMATERIALLIS

Method

GETFACEMATERIALLIS

Identifier

R3SUBDIVM_GETFACEMATERIALLIS

Param 3:

R3INT, face index

JavaScript

obj.GETFACEMATERIALLIS(p3);

Description

Returns a pointer to face material list containing R3FACEMATERIAL structures or a NULL pointer if no materials are defined for the face.

R3SUBDIVM_OPTIMIZEFACES

Method

OPTIMIZEFACES

Identifier

R3SUBDIVM_OPTIMIZEFACES

JavaScript

obj.OPTIMIZEFACES();

Description

private

R3SUBDIVM_MOVEFACEMATERIALBE

Method

MOVEFACEMATERIALBE

Identifier

R3SUBDIVM_MOVEFACEMATERIALBE

Param 1:

char*, face mat

Param 3:

char*, to mat

JavaScript

obj.MOVEFACEMATERIALBE(p1, p3);

Description

Move the facem material specified in p1 to before the material specified by p3

R3SUBDIVM_MOVEFACEMATERIALAF

Method

MOVEFACEMATERIALAF

Identifier

R3SUBDIVM_MOVEFACEMATERIALAF

Param 1:

char*, face mat

Param 3:

char*, to mat

JavaScript

obj.MOVEFACEMATERIALAF(p1, p3);

Description

Move the facem material specified in p1 to aftere the material specified by p3

R3SUBDIVM_ENUMFACEVERTICES

Method

ENUMFACEVERTICES

Identifier

R3SUBDIVM_ENUMFACEVERTICES

Param 3:

R3TAG*, R3RA_Hook, R3RA_HookData, R3PRIMA_PointSpace

JavaScript

obj.ENUMFACEVERTICES(p3);

Description

Enum face vertices to given R3HANDLEHOOK callback

R3SUBDIVM_UNSELECTHANDLES

Method

UNSELECTHANDLES

Identifier

R3SUBDIVM_UNSELECTHANDLES

Param 3:

R3INT, see sds handle types

JavaScript

obj.UNSELECTHANDLES(p3);

Description

Unselect handles with given type.

R3SUBDIVM_SETSELECTEDFACEMAT

Method

SETSELECTEDFACEMAT

Identifier

R3SUBDIVM_SETSELECTEDFACEMAT

Param 1:

R3INT, mask

Param 3:

R3VECTOR, uvw

JavaScript

obj.SETSELECTEDFACEMAT(p1, p3);

Description

Set selected face uv's.

R3SUBDIVM_INSERTVERTEXTOFACE

Method

INSERTVERTEXTOFACE

Identifier

R3SUBDIVM_INSERTVERTEXTOFACE

Param 1:

R3INT, face index

Param 2:

R3INT, index in face

Param 3:

R3INT, index to vertices

JavaScript

obj.INSERTVERTEXTOFACE(p1, p2, p3);

Description

R3SUBDIVM_REMOVEVERTEXFROMFA

Method

REMOVEVERTEXFROMFA

Identifier

R3SUBDIVM_REMOVEVERTEXFROMFA

Param 1:

R3INT, face index

Param 2:

R3INT

Param 3:

R3INT, index in face

JavaScript

obj.REMOVEVERTEXFROMFA(p1, p2, p3);

Description

Remove the given vertex from the specified face.

R3SUBDIVM_SETSELECTEDFACESUV

Method

SETSELECTEDFACESUV

Identifier

R3SUBDIVM_SETSELECTEDFACESUV

JavaScript

obj.SETSELECTEDFACESUV();

Description

Shows/hides the selected faces in UV editors.

R3SUBDIVM_SETALLFACESUVVISIB

Method

SETALLFACESUVVISIB

Identifier

R3SUBDIVM_SETALLFACESUVVISIB

JavaScript

obj.SETALLFACESUVVISIB();

Description

Shows/hides all faces in UV editors.

R3SUBDIVM_SETFACEMATERIALUV

Method

SETFACEMATERIALUV

Identifier

R3SUBDIVM_SETFACEMATERIALUV

Param 1:

R3INT, face index

Param 2:

char*, material name

Param 3:

R3VECTOR, array of UVs, one for each vertex of the face

JavaScript

obj.SETFACEMATERIALUV(p1, p2, p3);

Description

sets face material UVs for a face

R3SUBDIVM_DETACHMATFROMALLFA

Method

DETACHMATFROMALLFA

Identifier

R3SUBDIVM_DETACHMATFROMALLFA

Param 3:

char*, material name

JavaScript

obj.DETACHMATFROMALLFA(p3);

Description

Detach material from all faces.

R3SUBDIVM_GETVERTEXCOUNTOFFA

Method

GETVERTEXCOUNTOFFA

Identifier

R3SUBDIVM_GETVERTEXCOUNTOFFA

Return

R3INT, number of vertices

Param 3:

R3INT, face index

JavaScript

rc = obj.GETVERTEXCOUNTOFFA(p3);

Description

Fetch the number of vertices in the given face.

R3SUBDIVM_INTERPOLATEPOINTWI

Method

INTERPOLATEPOINTWI

Identifier

R3SUBDIVM_INTERPOLATEPOINTWI

Param 1:

R3INT, index of the vertex for which to interpolate pointwise values

Param 2:

R3FLOAT, interpolation factor

Param 3:

R3TAG*, tag list containing R3RA_P0, R3RA_P1 - the indices of the the vertices to interpolate from

JavaScript

obj.INTERPOLATEPOINTWI(p1, p2, p3);

Description

Interpolates pointwise values for a vertex

R3SUBDIVM_DIVIDEFACESBYINDIC

Method

DIVIDEFACESBYINDIC

Identifier

R3SUBDIVM_DIVIDEFACESBYINDIC

Param 1:

R3INT, number of groups consisting of a face index and a pair indices

Param 2:

R3INT*, array of face indices

Param 3:

R3INT*, array of vertex indices arranged in pairs

JavaScript

obj.DIVIDEFACESBYINDIC(p1, p2, p3);

Description

Divides given faces between given vertices

R3SUBDIVM_CALCULATEFACECENTE

Method

CALCULATEFACECENTE

Identifier

R3SUBDIVM_CALCULATEFACECENTE

Return

R3BOOL, TRUE if successfull

Param 1:

R3VECTOR, the face centers are returned here

Param 2:

R3INT, space

Param 3:

R3VECTOR, the face normals are returned here

JavaScript

rc = obj.CALCULATEFACECENTE(p1, p2, p3);

Description

Calculates face centers and normals.

R3SUBDIVM_DUPLICATE

Method

DUPLICATE

Identifier

R3SUBDIVM_DUPLICATE

JavaScript

obj.DUPLICATE();

Description

Copies the the faces (does not connect the edges).

R3SUBDIVM_COPYSELECTED

Method

COPYSELECTED

Identifier

R3SUBDIVM_COPYSELECTED

Return

R3OBJ*, sds object containing the selected parts

JavaScript

rc = obj.COPYSELECTED();

Description

Copies the selected parts of the SDS object into a new object.

R3SUBDIVM_SETFACE

Method

SETFACE

Identifier

R3SUBDIVM_SETFACE

Return

R3BOOL, true if succeeded

Param 1:

R3INT, index of the face to be defined

Param 2:

R3INT, number of vertices

Param 3:

R3INT*, array of vertex indices

JavaScript

rc = obj.SETFACE(p1, p2, p3);

Description

Set vertex count and vertex indices for the given face.

R3SUBDIVM_FILLHOLES

Method

FILLHOLES

Identifier

R3SUBDIVM_FILLHOLES

Return

R3BOOL, true if succeeded

Param 1:

R3BOOL, selected, if set only holes in selected regions will be filled

Param 3:

R3INT, maximum number of edges in a hole to fill

JavaScript

rc = obj.FILLHOLES(p1, p3);

Description

Fill holes

R3SUBDIVM_UNWRAPUV

Method

UNWRAPUV

Identifier

R3SUBDIVM_UNWRAPUV

Param 3:

R3INT, subdivision iterations

JavaScript

obj.UNWRAPUV(p3);

Description

Unwraps the current UV channel using the subdivision algorithm to the UV values.

R3SUBDIVM_DEFAULTUV

Method

DEFAULTUV

Identifier

R3SUBDIVM_DEFAULTUV

JavaScript

obj.DEFAULTUV();

Description

Calculates default values for the current UV channel using sphere projection.

R3SUBDIVM_DELETEORPHANVERTIC

Method

DELETEORPHANVERTIC

Identifier

R3SUBDIVM_DELETEORPHANVERTIC

JavaScript

obj.DELETEORPHANVERTIC();

Description

Deletes selected vertices that are not connected to any face.

R3SUBDIVM_SETPOINTLOCAL

Method

SETPOINTLOCAL

Identifier

R3SUBDIVM_SETPOINTLOCAL

Return

R3BOOL, true if succeeded

Param 1:

R3INT, index

Param 3:

R3VECTOR, point

JavaScript

rc = obj.SETPOINTLOCAL(p1, p3);

Description

Low level set point method. The point is given in object space. * The method doesn't generate R3MM_CHANGED nor call R3TTM_CHANGENIMATEDTAG.

R3SUBDIVM_GETPOINTLOCAL

Method

GETPOINTLOCAL

Identifier

R3SUBDIVM_GETPOINTLOCAL

Return

R3BOOL, true if succeeded

Param 1:

R3INT, index

Param 3:

R3VECTOR, point

JavaScript

rc = obj.GETPOINTLOCAL(p1, p3);

Description

Get point in object space

R3SUBDIVM_ALLOCFACEID

Method

ALLOCFACEID

Identifier

R3SUBDIVM_ALLOCFACEID

Return

R3INT, face id

JavaScript

rc = obj.ALLOCFACEID();

Description

Returns next unique face id

R3SUBDIVM_REGISTERNOTIFY

Method

REGISTERNOTIFY

Identifier

R3SUBDIVM_REGISTERNOTIFY

Param 2:

R3INT, event flags, see registernotify_flags below

Param 3:

R3INT, method to notify with

JavaScript

obj.REGISTERNOTIFY(0, p2, p3);

Description

Registers an object that will be notified when certain events occur

R3SUBDIVM_UNREGISTERNOTIFY

Method

UNREGISTERNOTIFY

Identifier

R3SUBDIVM_UNREGISTERNOTIFY

JavaScript

obj.UNREGISTERNOTIFY();

Description

Unregisters a notify object

R3SUBDIVM_UNWRAPGEOMETRY

Method

UNWRAPGEOMETRY

Identifier

R3SUBDIVM_UNWRAPGEOMETRY

Param 3:

R3INT, subdivision iterations

JavaScript

obj.UNWRAPGEOMETRY(p3);

Description

Unwraps the geometry using the subdivision algorithm.

R3SUBDIVM_DUPLICATEANDMIRROR

Method

DUPLICATEANDMIRROR

Identifier

R3SUBDIVM_DUPLICATEANDMIRROR

JavaScript

obj.DUPLICATEANDMIRROR();

Description

Apply duplicate and mirror

R3SUBDIVM_GETFACECENTERANDNO

Method

GETFACECENTERANDNO

Identifier

R3SUBDIVM_GETFACECENTERANDNO

Param 1:

R3INT, face index

Param 2:

R3VECTOR, face center

Param 3:

R3VECTOR, face normal

JavaScript

obj.GETFACECENTERANDNO(p1, p2, p3);

Description

Get face center and normal in object space.

R3SUBDIVM_AUTOINITIALIZEFACE

Method

AUTOINITIALIZEFACE

Identifier

R3SUBDIVM_AUTOINITIALIZEFACE

Param 3:

char*, face material name

JavaScript

obj.AUTOINITIALIZEFACE(p3);

Description

R3SUBDIVM_RENAMEFACEMATERIAL

Method

RENAMEFACEMATERIAL

Identifier

R3SUBDIVM_RENAMEFACEMATERIAL

Param 1:

char*, old face material name

Param 3:

char*, new face material name

JavaScript

obj.RENAMEFACEMATERIAL(p1, p3);

Description

R3SUBDIVM_GETMAXEDGESPERVERT

Method

GETMAXEDGESPERVERT

Identifier

R3SUBDIVM_GETMAXEDGESPERVERT

Return

R3INT, max connecting edge count

JavaScript

rc = obj.GETMAXEDGESPERVERT();

Description

return the maximum number of edges connecting to a vertex.

R3SUBDIVM_FACESTOTRIANGLESSM

Method

FACESTOTRIANGLESSM

Identifier

R3SUBDIVM_FACESTOTRIANGLESSM

Return

R3BOOL, TRUE if successfull

Param 1:

R3BOOL, if TRUE excludes quad faces

Param 3:

R3BOOL, if TRUE processes all faces (not only selected) except quads if p1 is TRUE

JavaScript

rc = obj.FACESTOTRIANGLESSM(p1, p3);

Description

Divides faces to triangles using triangulation algorithm.

R3SUBDIVM_WELD

Method

WELD

Identifier

R3SUBDIVM_WELD

Return

R3BOOL, TRUE if successfull

JavaScript

rc = obj.WELD();

Description

Welds two (selected) edge loops together by adding new faces into the gap

R3SUBDIVM_GETFACE

Method

GETFACE

Identifier

R3SUBDIVM_GETFACE

Return

R3INT, number of vertices in the face or NULL if the face was not found

Param 1:

R3INT, index of the face

Param 3:

R3INT*, memory buffer for the faces indices to be fetched. Use R3SUBDIVM_GETVERTEXCOUNTOFFACE * method to fetch the size for the buffer.

JavaScript

rc = obj.GETFACE(p1, p3);

Description

Fetch face indices of given face.

R3SUBDIVM_FLATTEN

Method

FLATTEN

Identifier

R3SUBDIVM_FLATTEN

Return

R3BOOL, TRUE if successfull

JavaScript

rc = obj.FLATTEN();

Description

Flattens selected regions.

R3SUBDIVM_AUTOCREASES

Method

AUTOCREASES

Identifier

R3SUBDIVM_AUTOCREASES

Return

R3BOOL, TRUE if successfull

Param 1:

int, flagbit1=1 -> set edge creases, flagbit2=2 -> set point creases. E.g. 3 = set both crease types.

Param 3:

R3FLOAT, angle in radians

JavaScript

rc = obj.AUTOCREASES(p1, p3);

Description

Sets point/edge creates by a threshold angle. Does not change already set creases. In edit mode, obeys selection areas.

R3SUBDIVM_GETFACEINDEX

Method

GETFACEINDEX

Identifier

R3SUBDIVM_GETFACEINDEX

Return

R3INT, vertex index, or -1 if given face point was not found.

Param 1:

R3INT, face index

Param 3:

R3INT, face point

JavaScript

rc = obj.GETFACEINDEX(p1, p3);

Description

Fetch the vertex index of give face point.

PointCount

Attribute

PointCount

Identifier

R3SUBDIVA_PointCount

JavaScript type

Integer

C type

R3INT

Description

number of vertices

Syntax


jsobj.SetPointCount(value);
value = jsobj.GetPointCount();


R3INT value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_PointCount, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3SUBDIVA_PointCount, &value, R3TAG_END);

Points

Attribute

Points

Identifier

R3SUBDIVA_Points

Type

r3Vect

Description

array of vertices

Syntax


jsobj.SetPoints(value);
value = jsobj.GetPoints();


R3VECTOR* value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_Points, value, R3TAG_END);
R3VECTOR* value;
R3GetAttrs(r3obj, R3SUBDIVA_Points, &value, R3TAG_END);

FaceCount

Attribute

FaceCount

Identifier

R3SUBDIVA_FaceCount

JavaScript type

Integer

C type

R3INT

Description

number of faces

Syntax


jsobj.SetFaceCount(value);
value = jsobj.GetFaceCount();


R3INT value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_FaceCount, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3SUBDIVA_FaceCount, &value, R3TAG_END);

Type

Attribute

Type

Identifier

R3SUBDIVA_Type

JavaScript type

Integer

C type

R3INT

Description

smooth, polygonal, etc.

Syntax


jsobj.SetType(value);
value = jsobj.GetType();


R3INT value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_Type, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3SUBDIVA_Type, &value, R3TAG_END);

SelectResolution

Attribute

SelectResolution

Identifier

R3SUBDIVA_SelectResolution

JavaScript type

Integer

C type

R3INT

Description

selection resolution, R3SUBDIVR_POINT, R3SUBDIVR_EDGE or R3SUBDIVR_FACE

Syntax


jsobj.SetSelectResolution(value);
value = jsobj.GetSelectResolution();


R3INT value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_SelectResolution, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3SUBDIVA_SelectResolution, &value, R3TAG_END);

SelectedFaces

Attribute

SelectedFaces

Identifier

R3SUBDIVA_SelectedFaces

JavaScript type

String

C type

R3UBYTE*

Description

array of flags showing selected faces

Syntax


value = jsobj.GetSelectedFaces();


R3UBYTE* value;
R3GetAttrs(r3obj, R3SUBDIVA_SelectedFaces, &value, R3TAG_END);

SelectedEdges

Attribute

SelectedEdges

Identifier

R3SUBDIVA_SelectedEdges

JavaScript type

String

C type

R3UBYTE*

Description

array of flags showing selected edges

Syntax


value = jsobj.GetSelectedEdges();


R3UBYTE* value;
R3GetAttrs(r3obj, R3SUBDIVA_SelectedEdges, &value, R3TAG_END);

SelectedVertices

Attribute

SelectedVertices

Identifier

R3SUBDIVA_SelectedVertices

JavaScript type

String

C type

R3UBYTE*

Description

array of flags showing selected vertices

Syntax


value = jsobj.GetSelectedVertices();


R3UBYTE* value;
R3GetAttrs(r3obj, R3SUBDIVA_SelectedVertices, &value, R3TAG_END);

EdgeCount

Attribute

EdgeCount

Identifier

R3SUBDIVA_EdgeCount

JavaScript type

Integer

C type

R3INT

Description

number of edges

Syntax


value = jsobj.GetEdgeCount();


R3INT value;
R3GetAttrs(r3obj, R3SUBDIVA_EdgeCount, &value, R3TAG_END);

UVCoords

Attribute

UVCoords

Identifier

R3SUBDIVA_UVCoords

Type

r3Vect

Description

array of uvw-coordinates for the vertices

Syntax


jsobj.SetUVCoords(value);
value = jsobj.GetUVCoords();


R3VECTOR* value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_UVCoords, value, R3TAG_END);
R3VECTOR* value;
R3GetAttrs(r3obj, R3SUBDIVA_UVCoords, &value, R3TAG_END);

Quality

Attribute

Quality

Identifier

R3SUBDIVA_Quality

JavaScript type

Integer

C type

R3INT

Description

rendering quality 1 ... 5

Syntax


jsobj.SetQuality(value);
value = jsobj.GetQuality();


R3INT value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_Quality, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3SUBDIVA_Quality, &value, R3TAG_END);

HiddenFaces

Attribute

HiddenFaces

Identifier

R3SUBDIVA_HiddenFaces

JavaScript type

String

C type

R3UBYTE*

Description

array of flags showing hidden faces

Syntax


jsobj.SetHiddenFaces(value);
value = jsobj.GetHiddenFaces();


R3UBYTE* value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_HiddenFaces, value, R3TAG_END);
R3UBYTE* value;
R3GetAttrs(r3obj, R3SUBDIVA_HiddenFaces, &value, R3TAG_END);

CurrentUVName

Attribute

CurrentUVName

Identifier

R3SUBDIVA_CurrentUVName

JavaScript type

String

C type

char*

Description

name of the current uv channel

Syntax


jsobj.SetCurrentUVName(value);
value = jsobj.GetCurrentUVName();


char* value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_CurrentUVName, value, R3TAG_END);
char* value;
R3GetAttrs(r3obj, R3SUBDIVA_CurrentUVName, &value, R3TAG_END);

WrapU

Attribute

WrapU

Identifier

R3SUBDIVA_WrapU

JavaScript type

Boolean

C type

R3BOOL

Description

if set, u of current uv channel is modulo wrapped

Syntax


jsobj.SetWrapU(value);
value = jsobj.GetWrapU();


R3BOOL value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_WrapU, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3SUBDIVA_WrapU, &value, R3TAG_END);

WrapV

Attribute

WrapV

Identifier

R3SUBDIVA_WrapV

JavaScript type

Boolean

C type

R3BOOL

Description

if set, v of current uv channel is modulo wrapped

Syntax


jsobj.SetWrapV(value);
value = jsobj.GetWrapV();


R3BOOL value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_WrapV, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3SUBDIVA_WrapV, &value, R3TAG_END);

HiddenVertices

Attribute

HiddenVertices

Identifier

R3SUBDIVA_HiddenVertices

JavaScript type

String

C type

R3UBYTE*

Description

array of flags showing hidden vertices

Syntax


value = jsobj.GetHiddenVertices();


R3UBYTE* value;
R3GetAttrs(r3obj, R3SUBDIVA_HiddenVertices, &value, R3TAG_END);

SmoothVertices

Attribute

SmoothVertices

Identifier

R3SUBDIVA_SmoothVertices

JavaScript type

String

C type

R3UBYTE*

Description

array of flags showing vertices with smooth shading

Syntax


jsobj.SetSmoothVertices(value);
value = jsobj.GetSmoothVertices();


R3UBYTE* value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_SmoothVertices, value, R3TAG_END);
R3UBYTE* value;
R3GetAttrs(r3obj, R3SUBDIVA_SmoothVertices, &value, R3TAG_END);

Weights

Attribute

Weights

Identifier

R3SUBDIVA_Weights

JavaScript type

Number

C type

R3FLOAT*

Description

pointwise weights

Syntax


jsobj.SetWeights(value);
value = jsobj.GetWeights();


R3FLOAT* value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_Weights, value, R3TAG_END);
R3FLOAT* value;
R3GetAttrs(r3obj, R3SUBDIVA_Weights, &value, R3TAG_END);

FloatSize

Attribute

FloatSize

Identifier

R3SUBDIVA_FloatSize

JavaScript type

Integer

C type

R3INT

Description

sizeof(R3FLOAT), read only

Syntax


value = jsobj.GetFloatSize();


R3INT value;
R3GetAttrs(r3obj, R3SUBDIVA_FloatSize, &value, R3TAG_END);

ColorSize

Attribute

ColorSize

Identifier

R3SUBDIVA_ColorSize

JavaScript type

Integer

C type

R3INT

Description

3 * sizeof(R3FLOAT), read only

Syntax


value = jsobj.GetColorSize();


R3INT value;
R3GetAttrs(r3obj, R3SUBDIVA_ColorSize, &value, R3TAG_END);

PointwiseColor

Attribute

PointwiseColor

Identifier

R3SUBDIVA_PointwiseColor

Type

r3Vect

Description

pointwise colors

Syntax


jsobj.SetPointwiseColor(value);
value = jsobj.GetPointwiseColor();


R3VECTOR* value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_PointwiseColor, value, R3TAG_END);
R3VECTOR* value;
R3GetAttrs(r3obj, R3SUBDIVA_PointwiseColor, &value, R3TAG_END);

PointwiseTranspare

Attribute

PointwiseTranspare

Identifier

R3SUBDIVA_PointwiseTranspare

Type

r3Vect

Description

pointwise transparency

Syntax


jsobj.SetPointwiseTranspare(value);
value = jsobj.GetPointwiseTranspare();


R3VECTOR* value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_PointwiseTransparency, value, R3TAG_END);
R3VECTOR* value;
R3GetAttrs(r3obj, R3SUBDIVA_PointwiseTransparency, &value, R3TAG_END);

PointwiseReflectio

Attribute

PointwiseReflectio

Identifier

R3SUBDIVA_PointwiseReflectio

Type

r3Vect

Description

pointwise reflection

Syntax


jsobj.SetPointwiseReflectio(value);
value = jsobj.GetPointwiseReflectio();


R3VECTOR* value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_PointwiseReflection, value, R3TAG_END);
R3VECTOR* value;
R3GetAttrs(r3obj, R3SUBDIVA_PointwiseReflection, &value, R3TAG_END);

PointwiseAlpha

Attribute

PointwiseAlpha

Identifier

R3SUBDIVA_PointwiseAlpha

JavaScript type

Number

C type

R3FLOAT*

Description

pointwise alpha

Syntax


jsobj.SetPointwiseAlpha(value);
value = jsobj.GetPointwiseAlpha();


R3FLOAT* value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_PointwiseAlpha, value, R3TAG_END);
R3FLOAT* value;
R3GetAttrs(r3obj, R3SUBDIVA_PointwiseAlpha, &value, R3TAG_END);

PointwiseFade

Attribute

PointwiseFade

Identifier

R3SUBDIVA_PointwiseFade

JavaScript type

Number

C type

R3FLOAT*

Description

pointwise fade

Syntax


jsobj.SetPointwiseFade(value);
value = jsobj.GetPointwiseFade();


R3FLOAT* value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_PointwiseFade, value, R3TAG_END);
R3FLOAT* value;
R3GetAttrs(r3obj, R3SUBDIVA_PointwiseFade, &value, R3TAG_END);

PointwiseIlluminat

Attribute

PointwiseIlluminat

Identifier

R3SUBDIVA_PointwiseIlluminat

Type

r3Vect

Description

pointwise illumination

Syntax


jsobj.SetPointwiseIlluminat(value);
value = jsobj.GetPointwiseIlluminat();


R3VECTOR* value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_PointwiseIllumination, value, R3TAG_END);
R3VECTOR* value;
R3GetAttrs(r3obj, R3SUBDIVA_PointwiseIllumination, &value, R3TAG_END);

PointwiseMatSpaceC

Attribute

PointwiseMatSpaceC

Identifier

R3SUBDIVA_PointwiseMatSpaceC

Type

r3Vect

Description

'R3SUBDIVA_PointwiseMatSpaceCoords' not documented

Syntax


jsobj.SetPointwiseMatSpaceC(value);
value = jsobj.GetPointwiseMatSpaceC();


R3VECTOR* value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_PointwiseMatSpaceCoords, value, R3TAG_END);
R3VECTOR* value;
R3GetAttrs(r3obj, R3SUBDIVA_PointwiseMatSpaceCoords, &value, R3TAG_END);

PointwiseOpticalTh

Attribute

PointwiseOpticalTh

Identifier

R3SUBDIVA_PointwiseOpticalTh

JavaScript type

Number

C type

R3FLOAT*

Description

pointwise optical thickness

Syntax


jsobj.SetPointwiseOpticalTh(value);
value = jsobj.GetPointwiseOpticalTh();


R3FLOAT* value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_PointwiseOpticalThickness, value, R3TAG_END);
R3FLOAT* value;
R3GetAttrs(r3obj, R3SUBDIVA_PointwiseOpticalThickness, &value, R3TAG_END);

PointwiseScope

Attribute

PointwiseScope

Identifier

R3SUBDIVA_PointwiseScope

JavaScript type

Number

C type

R3FLOAT*

Description

pointwise scope

Syntax


jsobj.SetPointwiseScope(value);
value = jsobj.GetPointwiseScope();


R3FLOAT* value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_PointwiseScope, value, R3TAG_END);
R3FLOAT* value;
R3GetAttrs(r3obj, R3SUBDIVA_PointwiseScope, &value, R3TAG_END);

PointwiseVolumeSam

Attribute

PointwiseVolumeSam

Identifier

R3SUBDIVA_PointwiseVolumeSam

JavaScript type

Number

C type

R3FLOAT*

Description

pointwise volume sampling level

Syntax


jsobj.SetPointwiseVolumeSam(value);
value = jsobj.GetPointwiseVolumeSam();


R3FLOAT* value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_PointwiseVolumeSampling, value, R3TAG_END);
R3FLOAT* value;
R3GetAttrs(r3obj, R3SUBDIVA_PointwiseVolumeSampling, &value, R3TAG_END);

InterpolateBoundar

Attribute

InterpolateBoundar

Identifier

R3SUBDIVA_InterpolateBoundar

JavaScript type

Boolean

C type

R3BOOL

Description

if true then open edges interpolated as creases

Syntax


jsobj.SetInterpolateBoundar(value);
value = jsobj.GetInterpolateBoundar();


R3BOOL value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_InterpolateBoundary, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3SUBDIVA_InterpolateBoundary, &value, R3TAG_END);

VertexSharpness

Attribute

VertexSharpness

Identifier

R3SUBDIVA_VertexSharpness

JavaScript type

String

C type

R3UBYTE*

Description

array of vertex sharpness values (0...2)

Syntax


value = jsobj.GetVertexSharpness();


R3UBYTE* value;
R3GetAttrs(r3obj, R3SUBDIVA_VertexSharpness, &value, R3TAG_END);

HasRoundings

Attribute

HasRoundings

Identifier

R3SUBDIVA_HasRoundings

JavaScript type

Boolean

C type

R3BOOL

Description

true if any edge has a rounding

Syntax


value = jsobj.GetHasRoundings();


R3BOOL value;
R3GetAttrs(r3obj, R3SUBDIVA_HasRoundings, &value, R3TAG_END);

CurrentFaceMateria

Attribute

CurrentFaceMateria

Identifier

R3SUBDIVA_CurrentFaceMateria

JavaScript type

String

C type

char*

Description

name of the current face material channel

Syntax


jsobj.SetCurrentFaceMateria(value);
value = jsobj.GetCurrentFaceMateria();


char* value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_CurrentFaceMaterialName, value, R3TAG_END);
char* value;
R3GetAttrs(r3obj, R3SUBDIVA_CurrentFaceMaterialName, &value, R3TAG_END);

ChannelList

Attribute

ChannelList

Identifier

R3SUBDIVA_ChannelList

JavaScript type

r3List

C type

R3LIST*

Description

vertex specific channels

Syntax


value = jsobj.GetChannelList();


R3LIST* value;
R3GetAttrs(r3obj, R3SUBDIVA_ChannelList, &value, R3TAG_END);

PointwiseUVCoords

Attribute

PointwiseUVCoords

Identifier

R3SUBDIVA_PointwiseUVCoords

Type

r3Vect

Description

'R3SUBDIVA_PointwiseUVCoords' not documented

Syntax


jsobj.SetPointwiseUVCoords(value);
value = jsobj.GetPointwiseUVCoords();


R3VECTOR* value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_PointwiseUVCoords, value, R3TAG_END);
R3VECTOR* value;
R3GetAttrs(r3obj, R3SUBDIVA_PointwiseUVCoords, &value, R3TAG_END);

SelectedFaceVertic

Attribute

SelectedFaceVertic

Identifier

R3SUBDIVA_SelectedFaceVertic

JavaScript type

String

C type

R3UBYTE*

Description

array of flags showing selected vertices in faces

Syntax


value = jsobj.GetSelectedFaceVertic();


R3UBYTE* value;
R3GetAttrs(r3obj, R3SUBDIVA_SelectedFaceVertices, &value, R3TAG_END);

SelectFaceVertices

Attribute

SelectFaceVertices

Identifier

R3SUBDIVA_SelectFaceVertices

JavaScript type

Boolean

C type

R3BOOL

Description

Syntax


jsobj.SetSelectFaceVertices(value);
value = jsobj.GetSelectFaceVertices();


R3BOOL value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_SelectFaceVertices, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3SUBDIVA_SelectFaceVertices, &value, R3TAG_END);

VertexUVsInFaceMod

Attribute

VertexUVsInFaceMod

Identifier

R3SUBDIVA_VertexUVsInFaceMod

JavaScript type

Boolean

C type

R3BOOL

Description

Syntax


jsobj.SetVertexUVsInFaceMod(value);
value = jsobj.GetVertexUVsInFaceMod();


R3BOOL value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_VertexUVsInFaceMode, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3SUBDIVA_VertexUVsInFaceMode, &value, R3TAG_END);

HiddenUVFaces

Attribute

HiddenUVFaces

Identifier

R3SUBDIVA_HiddenUVFaces

JavaScript type

String

C type

R3UBYTE*

Description

array of flags showing faces hidden in UV editors

Syntax


value = jsobj.GetHiddenUVFaces();


R3UBYTE* value;
R3GetAttrs(r3obj, R3SUBDIVA_HiddenUVFaces, &value, R3TAG_END);

PhongShade

Attribute

PhongShade

Identifier

R3SUBDIVA_PhongShade

JavaScript type

Boolean

C type

R3BOOL

Description

operational only for R3SUBDIVTYPE_POLYGONAL

Syntax


jsobj.SetPhongShade(value);
value = jsobj.GetPhongShade();


R3BOOL value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_PhongShade, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3SUBDIVA_PhongShade, &value, R3TAG_END);

MaxDisplacement

Attribute

MaxDisplacement

Identifier

R3SUBDIVA_MaxDisplacement

JavaScript type

Number

C type

R3FLOAT

Description

maximal render time displacement

Syntax


jsobj.SetMaxDisplacement(value);
value = jsobj.GetMaxDisplacement();


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_MaxDisplacement, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3SUBDIVA_MaxDisplacement, &value, R3TAG_END);

NextFaceId

Attribute

NextFaceId

Identifier

R3SUBDIVA_NextFaceId

JavaScript type

Integer

C type

R3INT

Description

next free unique face id

Syntax


jsobj.SetNextFaceId(value);
value = jsobj.GetNextFaceId();


R3INT value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_NextFaceId, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3SUBDIVA_NextFaceId, &value, R3TAG_END);

MinimizedOutlines

Attribute

MinimizedOutlines

Identifier

R3SUBDIVA_MinimizedOutlines

JavaScript type

Boolean

C type

R3BOOL

Description

outline rendering matches ctrl poly density

Syntax


jsobj.SetMinimizedOutlines(value);
value = jsobj.GetMinimizedOutlines();


R3BOOL value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_MinimizedOutlines, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3SUBDIVA_MinimizedOutlines, &value, R3TAG_END);

MaterialRendering

Attribute

MaterialRendering

Identifier

R3SUBDIVA_MaterialRendering

JavaScript type

Integer

C type

R3INT

Description

real time mat. evaluation. See values below

Syntax


jsobj.SetMaterialRendering(value);
value = jsobj.GetMaterialRendering();


R3INT value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_MaterialRendering, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3SUBDIVA_MaterialRendering, &value, R3TAG_END);

ForceTessellation

Attribute

ForceTessellation

Identifier

R3SUBDIVA_ForceTessellation

JavaScript type

Boolean

C type

R3BOOL

Description

force tesselation

Syntax


jsobj.SetForceTessellation(value);
value = jsobj.GetForceTessellation();


R3BOOL value = ...;
R3SetAttrs(r3obj, R3SUBDIVA_ForceTessellation, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3SUBDIVA_ForceTessellation, &value, R3TAG_END);

values for R3SUBDIVA_MaterialRendering

R3SDSMATREN_SINGLE
R3SDSMATREN_FULL

vertex count

unique among faces

Handle types

R3SUBDIVHT_VERTEX
R3SUBDIVHT_EDGE
R3SUBDIVHT_FACE
R3SUBDIVHT_CENTER
R3SUBDIVHT_FACEVERTEX

R3SUBDIVR_POINT
R3SUBDIVR_EDGE
R3SUBDIVR_FACE

R3SUBDIVEXTRREGIONOPT_GROUPS
R3SUBDIVEXTRREGIONOPT_SEPARATE

R3SUBDIVEXTRNORMALOPT_GROUP
R3SUBDIVEXTRNORMALOPT_FACE
R3SUBDIVEXTRNORMALOPT_VERTEX
R3SUBDIVEXTRNORMALOPT_SELECTEDFACEVERTEX

R3SUBDIVACTION_EXTRUDE
R3SUBDIVACTION_SUBDIVIDE

R3SUBDIVTYPE_SMOOTH
R3SUBDIVTYPE_SMOOTHBILINEAR
R3SUBDIVTYPE_SMOOTHTRIANGLE
R3SUBDIVTYPE_POLYGONAL

R3SDSTRANSFFACENORMALOPT_FACE
R3SDSTRANSFFACENORMALOPT_GROUP

facecount*3 uv pairs

R3SDSVERTEXSHARPNESS_ROUNDED
R3SDSVERTEXSHARPNESS_SEMISHARP
R3SDSVERTEXSHARPNESS_SHARP

R3SDSEDGESHARPNESS_ROUNDED
R3SDSEDGESHARPNESS_SEMISHARP
R3SDSEDGESHARPNESS_SHARP
R3SDSEDGESHARPNESS_FREE
R3MAX_PWCOMPONETS

for temp. use, don't save

for temp. use, don't save

for temp. use, don't save

wrap boundaries

n.name contains the material name

flags in R3FACEMATERIAL 'flags'

R3SDSFACEMATERIALF_TEXTURE

registernotify_flags

R3SDSNOTIFY_REMOVEFACE
R3SDSNOTIFY_INVALIDATEFACEID
R3SDSNOTIFY_BEVELEDOBJECT
R3SDSNOTIFY_BEGINCHANGEFACEID
R3SDSNOTIFY_CHANGEFACEID
R3SDSNOTIFY_ENDCHANGEFACEID
Tags

Tags

R3SUBDIVA_ExtrudeRegionOpt
R3SUBDIVA_ExtrudeNormalOpt
R3SUBDIVA_ExtrudeLeaveFloor
R3SUBDIVA_ExtrudeSectionCount
R3SUBDIVA_TransformCenter
R3SUBDIVA_TransformNormal
R3SUBDIVA_PointwiseChannel
R3SUBDIVA_PointwiseID
R3SUBDIVA_PointwiseName
R3SUBDIVA_HasPointwiseColors
R3SUBDIVA_ScaleDirection
R3SUBDIVA_PointwiseData
R3SUBDIVA_EvalDenseParamAddr
R3SUBDIVA_EvalDenseFaceMaterial
R3SUBDIVA_NoAutoUVInit
R3SUBDIVA_KeepAllPoints