Rhino C++ API  7.21
Public Member Functions | Public Attributes | List of all members
ON_ObjRefEvaluationParameter Class Reference

#include <opennurbs_objref.h>

Public Member Functions

 ON_ObjRefEvaluationParameter ()
 
 ~ON_ObjRefEvaluationParameter ()
 
void Default ()
 
bool Read (ON_BinaryArchive &)
 
bool Write (ON_BinaryArchive &) const
 

Public Attributes

ON_Interval m_s [3]
 curve/surface/cage domains More...
 
double m_t [4]
 
ON_COMPONENT_INDEX m_t_ci
 
int m_t_type
 

Detailed Description

NoKeywords

/ / Copyright (c) 1993-2012 Robert McNeel & Associates. All rights reserved. / OpenNURBS, Rhinoceros, and Rhino3D are registered trademarks of Robert / McNeel & Associates. / / THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY. / ALL IMPLIED WARRANTIES OF FITNESS FOR ANY PARTICULAR PURPOSE AND OF / MERCHANTABILITY ARE HEREBY DISCLAIMED. /
/ For complete openNURBS copyright information see http://www.opennurbs.org. / //////////////////////////////////////////////////////////////

Constructor & Destructor Documentation

◆ ON_ObjRefEvaluationParameter()

ON_ObjRefEvaluationParameter::ON_ObjRefEvaluationParameter ( )

◆ ~ON_ObjRefEvaluationParameter()

ON_ObjRefEvaluationParameter::~ON_ObjRefEvaluationParameter ( )

Member Function Documentation

◆ Default()

void ON_ObjRefEvaluationParameter::Default ( )

◆ Read()

bool ON_ObjRefEvaluationParameter::Read ( ON_BinaryArchive )

◆ Write()

bool ON_ObjRefEvaluationParameter::Write ( ON_BinaryArchive ) const

Member Data Documentation

◆ m_s

ON_Interval ON_ObjRefEvaluationParameter::m_s[3]

curve/surface/cage domains

◆ m_t

double ON_ObjRefEvaluationParameter::m_t[4]

◆ m_t_ci

ON_COMPONENT_INDEX ON_ObjRefEvaluationParameter::m_t_ci

Not necessarily the same as m_component_index See comment above for details.

◆ m_t_type

int ON_ObjRefEvaluationParameter::m_t_type

If m_point != ON_3dPoint::UnsetPoint and m_t_type != 0, then m_t_type, m_t, and m_t_ci record the m_geometry evaluation parameters of the m_point.

m_t_type values

0: no parameter values; m_t_ci and m_t[] have no meaning.

1: m_geometry points to a curve, m_t[0] is a curve parameter for m_point, and m_t_ci has no meaning.

2: m_geometry points to surface or single faced brep, (m_t[0],m_t[1]) is a surface parameter for m_point, and m_t_ci has no meaning. In this case, m_component_index may not be set or, if m_geometry points to a brep face, m_component_index may identify the face in the parent brep.

3: m_geometry points to a brep edge with an associated trim and m_t[0] is the edge parameter for m_point. m_t_ci is the ON_BrepTrim component index and m_t[1] is the ON_BrepTrim parameter that corresponds to the edge point. m_s[0] and m_s[1] are normalized parameters. In this case m_component_index identifies the the edge in the brep and m_t_ci identifies a trim.

4: m_geometry points to a mesh or mesh face and m_t_ci identifies the mesh face. If the face is a triangle, the barycentric coordinates of m_point are(m_t[0], m_t[1], m_t[2]) and m_t[3] is zero. If the mesh face is a quadrangle, the barycentric coordinates of m_point are (m_t[0], m_t[1], m_t[2], m_t[3]) and at least one of the coordinates is zero. In both cases, the point can be evaluated using the formula m_t[0]*mesh.m_V[f.vi[0]] + ... + m_t[3]*mesh.m_V[f.vi[3]], where f = mesh.m_F[m_component_index.m_index]. In this case, if m_geometry points to a mesh, then m_component_index != m_t_ci.

5: m_geometry points to a mesh or mesh edge and m_t_ci identifies the mesh edge. The normalized coordinate of the point on the mesh edge is m_t[0]. The point can be evaluated using the formula m_t[0]*mesh.m_V[v0] + (1.0-m_t[0])*mesh.m_V[v1], where v0 and v1 are the indices of the mesh vertices at the edge's ends. In this case, if m_geometry points to a mesh, then m_component_index != m_t_ci.

6: m_geometry points to a NURBS cage and (m_t[0],m_t[1],m_t[2]) are cage evaluation parameters.

7: m_geometry points to an annotation object and m_t_ci identifies a point on the annotation object.

8: m_geometry points to a mesh or mesh vertex object and m_t_ci identifies a vertex on the mesh object.