Rhino C++ API  8.6
Public Member Functions | Public Attributes | List of all members
ON_PlanarSection Class Reference

#include <opennurbs_plus_sections.h>

Public Member Functions

 ON_PlanarSection ()
 
 ON_PlanarSection (const ON_PlanarSection &src)
 
 ~ON_PlanarSection ()
 
void EvaluateSurface (const class ON_Surface *surface)
 
ON_PlanarSectionoperator= (const ON_PlanarSection &src)
 

Public Attributes

ON_Curvem_2dcurve
 
ON_SimpleArray< ON_2dPointm_2dpoints
 Surface parameters (when available) More...
 
ON_Curvem_3dcurve
 
ON_SectionAnalysisAppearance m_appearance
 
const unsigned char m_class_version
 constructor sets m_class_version = 0; More...
 
ON_SimpleArray< ON_3dVectorm_curvatures
 Surface sectional curvature (when available) More...
 
ON_PlaneEquation m_plane_eqn
 
ON_SimpleArray< ON_3dPointm_points
 3d points on the section curve More...
 
ON_UUID m_section_plane_id
 ON_SectionAnalysisPlane identification. More...
 
ON__UINT64 m_section_plane_mark
 

Constructor & Destructor Documentation

◆ ON_PlanarSection() [1/2]

ON_PlanarSection::ON_PlanarSection ( )

◆ ~ON_PlanarSection()

ON_PlanarSection::~ON_PlanarSection ( )

◆ ON_PlanarSection() [2/2]

ON_PlanarSection::ON_PlanarSection ( const ON_PlanarSection src)

Member Function Documentation

◆ EvaluateSurface()

void ON_PlanarSection::EvaluateSurface ( const class ON_Surface surface)

Description: Evaluate the surface at the m_2dpoints[] values to set the m_points[] and m_curvatures[] values. Parameters: surface - [in] The input values of m_appearance, m_plane_eqn and m_m2d_points are used to calculate the 3d planar section values and these are returned in m_points[] and m_curvatures. If the appearance values indicate the 2d segments need to be refined, then m_2dpoints[] is updated as well.

◆ operator=()

ON_PlanarSection& ON_PlanarSection::operator= ( const ON_PlanarSection src)

Member Data Documentation

◆ m_2dcurve

ON_Curve* ON_PlanarSection::m_2dcurve

A 2d curve that approximates the intersection in the surface's parameter space. (Often null)

◆ m_2dpoints

ON_SimpleArray<ON_2dPoint> ON_PlanarSection::m_2dpoints

Surface parameters (when available)

◆ m_3dcurve

ON_Curve* ON_PlanarSection::m_3dcurve

A 3d curve that approximates the intersection In general, the curvature of m_3dcurve is a poor approximation of the surface's sectional curvature. (Often null)

◆ m_appearance

ON_SectionAnalysisAppearance ON_PlanarSection::m_appearance

A copy of the appearance settings is stored here so the values can be quickly found. Use ON_SectionAnalysisAppearance.m_update_mark to efficienty detect changes and update these cached settings.

◆ m_class_version

const unsigned char ON_PlanarSection::m_class_version

constructor sets m_class_version = 0;

Fields may be be added to this class during the V5 lifecycle. If that happens, then m_class_version will be incremented.

◆ m_curvatures

ON_SimpleArray<ON_3dVector> ON_PlanarSection::m_curvatures

Surface sectional curvature (when available)

◆ m_plane_eqn

ON_PlaneEquation ON_PlanarSection::m_plane_eqn

Equation of the plane used to calculate the section information below.

◆ m_points

ON_SimpleArray<ON_3dPoint> ON_PlanarSection::m_points

3d points on the section curve

◆ m_section_plane_id

ON_UUID ON_PlanarSection::m_section_plane_id

ON_SectionAnalysisPlane identification.

◆ m_section_plane_mark

ON__UINT64 ON_PlanarSection::m_section_plane_mark