CFx SDK Documentation 2026 SP0
Loading...
Searching...
No Matches
DbCurvePE.h
Go to the documentation of this file.
1
2// Copyright (C) 2002-2024, Open Design Alliance (the "Alliance").
3// All rights reserved.
4//
5// This software and its documentation and related materials are owned by
6// the Alliance. The software may only be incorporated into application
7// programs owned by members of the Alliance, subject to a signed
8// Membership Agreement and Supplemental Software License Agreement with the
9// Alliance. The structure and organization of this software are the valuable
10// trade secrets of the Alliance and its suppliers. The software is also
11// protected by copyright law and international treaty provisions. Application
12// programs incorporating this software must include the following statement
13// with their copyright notices:
14//
15// This application incorporates Open Design Alliance software pursuant to a license
16// agreement with Open Design Alliance.
17// Open Design Alliance Copyright (C) 2002-2024 by Open Design Alliance.
18// All rights reserved.
19//
20// By use of this software, its documentation or related materials, you
21// acknowledge and accept the above terms.
23
24#ifndef _OD_DB_CURVE_PE_
25#define _OD_DB_CURVE_PE_
26
27
28#include "DbCurve.h"
29
36class DBENT_EXPORT OdDbCurvePE : public OdRxObject
37{
38public:
40
52 const OdGePlane& projPlane,
53 OdDbCurvePtr* pProjCurve) const = 0;
54
66 virtual OdResult getProjectedCurve(const OdDbCurve* pCurve,
67 const OdGePlane& projPlane,
68 const OdGeVector3d& projDirection,
69 OdDbCurvePtr* pProjCurve) const = 0;
70
81 virtual OdResult getOffsetCurves(const OdDbCurve* pCurve,
82 double offsetDistance,
83 OdRxObjectPtrArray& offsetCurves) const
84 { return eNotImplemented; } //Implemented in OdDbCurve
85
99 const OdGeVector3d& normal,
100 double offsetDistance,
101 OdRxObjectPtrArray& offsetCurves) const
102 { return eNotImplemented; } //Implemented in OdDbCurve
103
114 virtual OdResult getSplitCurves (const OdDbCurve* pCurve,
115 const OdGeDoubleArray& params,
116 OdRxObjectPtrArray& curveSegments) const = 0;
117
128 virtual OdResult getSplitCurves (const OdDbCurve* pCurve,
129 const OdGePoint3dArray& points,
130 OdRxObjectPtrArray& curveSegments) const = 0;
131
141 virtual OdResult extend(OdDbCurve* pCurve,
142 double param) = 0;
143
154 virtual OdResult extend(OdDbCurve* pCurve, bool extendStart,
155 const OdGePoint3d& toPoint) = 0;
156
157
167 virtual OdResult getSpline (const OdDbCurve* pCurve,
168 OdDbSplinePtr* spline) const = 0;
169
170
182 virtual OdResult getClosestPointTo(const OdDbCurve* pCurve,
183 const OdGePoint3d& givenPoint,
184 OdGePoint3d& pointOnCurve,
185 bool extend = false) const = 0;
186
205 virtual OdResult getClosestPointTo(const OdDbCurve* pCurve,
206 const OdGePoint3d& givenPoint,
207 const OdGeVector3d& normal,
208 OdGePoint3d& pointOnCurve,
209 bool extend = false) const = 0;
210};
211
215
216#endif //_OD_DB_CURVE_PE_
OdArray< OdGePoint3d, OdMemoryAllocator< OdGePoint3d > > OdGePoint3dArray
OdSmartPtr< OdDbCurve > OdDbCurvePtr
Definition DbCurve.h:44
OdSmartPtr< OdDbSpline > OdDbSplinePtr
Definition DbCurve.h:36
OdSmartPtr< OdDbCurvePE > OdDbCurvePEPtr
Definition DbCurvePE.h:214
#define DBENT_EXPORT
Definition DbExport.h:67
#define eNotImplemented
OdArray< double, OdMemoryAllocator< double > > OdGeDoubleArray
OdResult
Definition OdResult.h:29
OdArray< OdRxObjectPtr > OdRxObjectPtrArray
Definition RxObject.h:1196
virtual OdResult getOffsetCurves(const OdDbCurve *pCurve, double offsetDistance, OdRxObjectPtrArray &offsetCurves) const
Definition DbCurvePE.h:81
virtual OdResult getProjectedCurve(const OdDbCurve *pCurve, const OdGePlane &projPlane, const OdGeVector3d &projDirection, OdDbCurvePtr *pProjCurve) const =0
virtual OdResult getClosestPointTo(const OdDbCurve *pCurve, const OdGePoint3d &givenPoint, OdGePoint3d &pointOnCurve, bool extend=false) const =0
ODRX_DECLARE_MEMBERS(OdDbCurvePE)
virtual OdResult getOffsetCurvesGivenPlaneNormal(const OdDbCurve *pCurve, const OdGeVector3d &normal, double offsetDistance, OdRxObjectPtrArray &offsetCurves) const
Definition DbCurvePE.h:98
virtual OdResult getSpline(const OdDbCurve *pCurve, OdDbSplinePtr *spline) const =0
virtual OdResult getOrthoProjectedCurve(const OdDbCurve *pCurve, const OdGePlane &projPlane, OdDbCurvePtr *pProjCurve) const =0
virtual OdResult extend(OdDbCurve *pCurve, double param)=0
virtual OdResult getSplitCurves(const OdDbCurve *pCurve, const OdGePoint3dArray &points, OdRxObjectPtrArray &curveSegments) const =0
virtual OdResult getSplitCurves(const OdDbCurve *pCurve, const OdGeDoubleArray &params, OdRxObjectPtrArray &curveSegments) const =0
virtual OdResult getClosestPointTo(const OdDbCurve *pCurve, const OdGePoint3d &givenPoint, const OdGeVector3d &normal, OdGePoint3d &pointOnCurve, bool extend=false) const =0
virtual OdResult extend(OdDbCurve *pCurve, bool extendStart, const OdGePoint3d &toPoint)=0
GLenum GLint * params
Definition gles2_ext.h:184