mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-14 13:30:48 +03:00
0024002: Overall code and build procedure refactoring -- automatic
Automatic upgrade of OCCT code by command "occt_upgrade . -nocdl": - WOK-generated header files from inc and sources from drv are moved to src - CDL files removed - All packages are converted to nocdlpack
This commit is contained in:
33
src/Geom2dInt/FILES
Normal file
33
src/Geom2dInt/FILES
Normal file
@@ -0,0 +1,33 @@
|
||||
Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter.hxx
|
||||
Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter_0.cxx
|
||||
Geom2dInt_Geom2dCurveTool.cxx
|
||||
Geom2dInt_Geom2dCurveTool.hxx
|
||||
Geom2dInt_Geom2dCurveTool.lxx
|
||||
Geom2dInt_GInter.hxx
|
||||
Geom2dInt_GInter_0.cxx
|
||||
Geom2dInt_IntConicCurveOfGInter.hxx
|
||||
Geom2dInt_IntConicCurveOfGInter_0.cxx
|
||||
Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter.hxx
|
||||
Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter_0.cxx
|
||||
Geom2dInt_PCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx
|
||||
Geom2dInt_PCLocFOfTheLocateExtPCOfTheProjPCurOfGInter_0.cxx
|
||||
Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx
|
||||
Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter_0.cxx
|
||||
Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx
|
||||
Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter_0.cxx
|
||||
Geom2dInt_TheCurveLocatorOfTheProjPCurOfGInter.hxx
|
||||
Geom2dInt_TheCurveLocatorOfTheProjPCurOfGInter_0.cxx
|
||||
Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter.hxx
|
||||
Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter_0.cxx
|
||||
Geom2dInt_TheIntConicCurveOfGInter.hxx
|
||||
Geom2dInt_TheIntConicCurveOfGInter_0.cxx
|
||||
Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter.hxx
|
||||
Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter_0.cxx
|
||||
Geom2dInt_TheIntPCurvePCurveOfGInter.hxx
|
||||
Geom2dInt_TheIntPCurvePCurveOfGInter_0.cxx
|
||||
Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter.hxx
|
||||
Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter_0.cxx
|
||||
Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter.hxx
|
||||
Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter_0.cxx
|
||||
Geom2dInt_TheProjPCurOfGInter.hxx
|
||||
Geom2dInt_TheProjPCurOfGInter_0.cxx
|
@@ -1,38 +0,0 @@
|
||||
-- Created on: 1992-06-04
|
||||
-- Created by: Jacques GOUSSARD
|
||||
-- Copyright (c) 1992-1999 Matra Datavision
|
||||
-- Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
--
|
||||
-- This file is part of Open CASCADE Technology software library.
|
||||
--
|
||||
-- This library is free software; you can redistribute it and/or modify it under
|
||||
-- the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
-- by the Free Software Foundation, with special exception defined in the file
|
||||
-- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
-- distribution for complete text of the license and disclaimer of any warranty.
|
||||
--
|
||||
-- Alternatively, this file may be used under the terms of Open CASCADE
|
||||
-- commercial license or contractual agreement.
|
||||
|
||||
package Geom2dInt
|
||||
|
||||
---Purpose: Intersection between two Curves2 from Geom2dAdaptor
|
||||
|
||||
---Level: Public
|
||||
--
|
||||
-- All the methods of the classes are public.
|
||||
--
|
||||
|
||||
|
||||
uses Standard, gp, TColStd, GeomAbs, Geom2d, Adaptor3d, Adaptor2d, IntCurve
|
||||
|
||||
is
|
||||
|
||||
class Geom2dCurveTool;
|
||||
|
||||
class GInter instantiates IntCurveCurveGen from IntCurve
|
||||
(Curve2d from Adaptor2d,
|
||||
Geom2dCurveTool from Geom2dInt);
|
||||
|
||||
end Geom2dInt;
|
||||
|
@@ -0,0 +1,92 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#ifndef _Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter_HeaderFile
|
||||
#define _Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter_HeaderFile
|
||||
|
||||
#include <Standard.hxx>
|
||||
#include <Standard_DefineAlloc.hxx>
|
||||
#include <Standard_Handle.hxx>
|
||||
|
||||
#include <Standard_Boolean.hxx>
|
||||
#include <Standard_Integer.hxx>
|
||||
#include <Standard_Real.hxx>
|
||||
#include <Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#include <math_Vector.hxx>
|
||||
class Adaptor2d_Curve2d;
|
||||
class Geom2dInt_Geom2dCurveTool;
|
||||
class Geom2dInt_TheProjPCurOfGInter;
|
||||
class Geom2dInt_TheIntPCurvePCurveOfGInter;
|
||||
class Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter;
|
||||
class Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter;
|
||||
|
||||
|
||||
|
||||
class Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter
|
||||
{
|
||||
public:
|
||||
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
|
||||
Standard_EXPORT Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter(const Adaptor2d_Curve2d& C1, const Adaptor2d_Curve2d& C2, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT void Perform (const Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter& Poly1, const Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter& Poly2, Standard_Integer& NumSegOn1, Standard_Integer& NumSegOn2, Standard_Real& ParamOnSeg1, Standard_Real& ParamOnSeg2);
|
||||
|
||||
Standard_EXPORT void Perform (const Standard_Real Uo, const Standard_Real Vo, const Standard_Real UInf, const Standard_Real VInf, const Standard_Real USup, const Standard_Real VSup);
|
||||
|
||||
Standard_EXPORT Standard_Integer NbRoots() const;
|
||||
|
||||
Standard_EXPORT void Roots (Standard_Real& U, Standard_Real& V);
|
||||
|
||||
Standard_EXPORT Standard_Boolean AnErrorOccurred() const;
|
||||
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
private:
|
||||
|
||||
|
||||
Standard_EXPORT void MathPerform();
|
||||
|
||||
|
||||
Standard_Boolean done;
|
||||
Standard_Integer nbroots;
|
||||
Standard_Real myTol;
|
||||
Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter FctDist;
|
||||
math_Vector ToleranceVector;
|
||||
math_Vector BInfVector;
|
||||
math_Vector BSupVector;
|
||||
math_Vector StartingPoint;
|
||||
math_Vector Root;
|
||||
Standard_Boolean anErrorOccurred;
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#endif // _Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter_HeaderFile
|
@@ -0,0 +1,42 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#include <Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
|
||||
#include <Adaptor2d_Curve2d.hxx>
|
||||
#include <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#include <Geom2dInt_TheProjPCurOfGInter.hxx>
|
||||
#include <Geom2dInt_TheIntPCurvePCurveOfGInter.hxx>
|
||||
#include <Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#include <Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
|
||||
|
||||
#define TheCurve Adaptor2d_Curve2d
|
||||
#define TheCurve_hxx <Adaptor2d_Curve2d.hxx>
|
||||
#define TheCurveTool Geom2dInt_Geom2dCurveTool
|
||||
#define TheCurveTool_hxx <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#define TheProjPCur Geom2dInt_TheProjPCurOfGInter
|
||||
#define TheProjPCur_hxx <Geom2dInt_TheProjPCurOfGInter.hxx>
|
||||
#define IntCurve_ThePolygon2d Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_ThePolygon2d_hxx <Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#define IntCurve_TheDistBetweenPCurves Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_TheDistBetweenPCurves_hxx <Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#define IntCurve_ExactIntersectionPoint Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_ExactIntersectionPoint_hxx <Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#define IntCurve_IntPolyPolyGen Geom2dInt_TheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_IntPolyPolyGen_hxx <Geom2dInt_TheIntPCurvePCurveOfGInter.hxx>
|
||||
#include <IntCurve_ExactIntersectionPoint.gxx>
|
||||
|
197
src/Geom2dInt/Geom2dInt_GInter.hxx
Normal file
197
src/Geom2dInt/Geom2dInt_GInter.hxx
Normal file
@@ -0,0 +1,197 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#ifndef _Geom2dInt_GInter_HeaderFile
|
||||
#define _Geom2dInt_GInter_HeaderFile
|
||||
|
||||
#include <Standard.hxx>
|
||||
#include <Standard_DefineAlloc.hxx>
|
||||
#include <Standard_Handle.hxx>
|
||||
|
||||
#include <Standard_Real.hxx>
|
||||
#include <IntCurve_IntConicConic.hxx>
|
||||
#include <Geom2dInt_TheIntConicCurveOfGInter.hxx>
|
||||
#include <Geom2dInt_TheIntPCurvePCurveOfGInter.hxx>
|
||||
#include <IntRes2d_Intersection.hxx>
|
||||
#include <Standard_Boolean.hxx>
|
||||
#include <Standard_Integer.hxx>
|
||||
#include <TColStd_Array1OfReal.hxx>
|
||||
class Standard_ConstructionError;
|
||||
class Adaptor2d_Curve2d;
|
||||
class Geom2dInt_Geom2dCurveTool;
|
||||
class Geom2dInt_TheProjPCurOfGInter;
|
||||
class Geom2dInt_TheCurveLocatorOfTheProjPCurOfGInter;
|
||||
class Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter;
|
||||
class Geom2dInt_TheIntConicCurveOfGInter;
|
||||
class Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter;
|
||||
class Geom2dInt_IntConicCurveOfGInter;
|
||||
class Geom2dInt_TheIntPCurvePCurveOfGInter;
|
||||
class Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter;
|
||||
class Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter;
|
||||
class Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter;
|
||||
class IntRes2d_Domain;
|
||||
|
||||
|
||||
|
||||
class Geom2dInt_GInter : public IntRes2d_Intersection
|
||||
{
|
||||
public:
|
||||
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
|
||||
Geom2dInt_GInter();
|
||||
|
||||
Geom2dInt_GInter(const Adaptor2d_Curve2d& C, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Geom2dInt_GInter(const Adaptor2d_Curve2d& C, const IntRes2d_Domain& D, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Geom2dInt_GInter(const Adaptor2d_Curve2d& C1, const Adaptor2d_Curve2d& C2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Geom2dInt_GInter(const Adaptor2d_Curve2d& C1, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& C2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Geom2dInt_GInter(const Adaptor2d_Curve2d& C1, const Adaptor2d_Curve2d& C2, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Geom2dInt_GInter(const Adaptor2d_Curve2d& C1, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& C2, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT void Perform (const Adaptor2d_Curve2d& C1, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& C2, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
void Perform (const Adaptor2d_Curve2d& C1, const Adaptor2d_Curve2d& C2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT void Perform (const Adaptor2d_Curve2d& C1, const IntRes2d_Domain& D1, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT void Perform (const Adaptor2d_Curve2d& C1, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
void Perform (const Adaptor2d_Curve2d& C1, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& C2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
void Perform (const Adaptor2d_Curve2d& C1, const Adaptor2d_Curve2d& C2, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT IntRes2d_Domain ComputeDomain (const Adaptor2d_Curve2d& C1, const Standard_Real TolDomain) const;
|
||||
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
private:
|
||||
|
||||
|
||||
Standard_EXPORT void InternalPerform (const Adaptor2d_Curve2d& C1, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& C2, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol, const Standard_Boolean Composite);
|
||||
|
||||
Standard_EXPORT void InternalCompositePerform_noRecurs (const Standard_Integer NbInterC1, const Adaptor2d_Curve2d& C1, const Standard_Integer NumInterC1, const TColStd_Array1OfReal& Tab1, const IntRes2d_Domain& D1, const Standard_Integer NbInterC2, const Adaptor2d_Curve2d& C2, const Standard_Integer NumInterC2, const TColStd_Array1OfReal& Tab2, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT void InternalCompositePerform (const Adaptor2d_Curve2d& C1, const IntRes2d_Domain& D1, const Standard_Integer N1, const Standard_Integer NB1, const TColStd_Array1OfReal& Tab1, const Adaptor2d_Curve2d& C2, const IntRes2d_Domain& D2, const Standard_Integer N2, const Standard_Integer NB2, const TColStd_Array1OfReal& Tab2, const Standard_Real TolConf, const Standard_Real Tol, const Standard_Boolean Composite);
|
||||
|
||||
|
||||
Standard_Real param1inf;
|
||||
Standard_Real param1sup;
|
||||
Standard_Real param2inf;
|
||||
Standard_Real param2sup;
|
||||
IntCurve_IntConicConic intconiconi;
|
||||
Geom2dInt_TheIntConicCurveOfGInter intconicurv;
|
||||
Geom2dInt_TheIntPCurvePCurveOfGInter intcurvcurv;
|
||||
|
||||
|
||||
};
|
||||
|
||||
#define TheCurve Adaptor2d_Curve2d
|
||||
#define TheCurve_hxx <Adaptor2d_Curve2d.hxx>
|
||||
#define TheCurveTool Geom2dInt_Geom2dCurveTool
|
||||
#define TheCurveTool_hxx <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#define IntCurve_TheProjPCur Geom2dInt_TheProjPCurOfGInter
|
||||
#define IntCurve_TheProjPCur_hxx <Geom2dInt_TheProjPCurOfGInter.hxx>
|
||||
#define IntCurve_TheCurveLocatorOfTheProjPCur Geom2dInt_TheCurveLocatorOfTheProjPCurOfGInter
|
||||
#define IntCurve_TheCurveLocatorOfTheProjPCur_hxx <Geom2dInt_TheCurveLocatorOfTheProjPCurOfGInter.hxx>
|
||||
#define IntCurve_TheLocateExtPCOfTheProjPCur Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter
|
||||
#define IntCurve_TheLocateExtPCOfTheProjPCur_hxx <Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#define IntCurve_TheCurveLocatorOfTheProjPCur Geom2dInt_TheCurveLocatorOfTheProjPCurOfGInter
|
||||
#define IntCurve_TheCurveLocatorOfTheProjPCur_hxx <Geom2dInt_TheCurveLocatorOfTheProjPCurOfGInter.hxx>
|
||||
#define IntCurve_TheLocateExtPCOfTheProjPCur Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter
|
||||
#define IntCurve_TheLocateExtPCOfTheProjPCur_hxx <Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#define IntCurve_TheIntConicCurve Geom2dInt_TheIntConicCurveOfGInter
|
||||
#define IntCurve_TheIntConicCurve_hxx <Geom2dInt_TheIntConicCurveOfGInter.hxx>
|
||||
#define IntCurve_TheIntersectorOfTheIntConicCurve Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter
|
||||
#define IntCurve_TheIntersectorOfTheIntConicCurve_hxx <Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter.hxx>
|
||||
#define IntCurve_TheIntersectorOfTheIntConicCurve Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter
|
||||
#define IntCurve_TheIntersectorOfTheIntConicCurve_hxx <Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter.hxx>
|
||||
#define IntCurve_IntConicCurve Geom2dInt_IntConicCurveOfGInter
|
||||
#define IntCurve_IntConicCurve_hxx <Geom2dInt_IntConicCurveOfGInter.hxx>
|
||||
#define IntCurve_TheIntPCurvePCurve Geom2dInt_TheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_TheIntPCurvePCurve_hxx <Geom2dInt_TheIntPCurvePCurveOfGInter.hxx>
|
||||
#define IntCurve_ThePolygon2dOfTheIntPCurvePCurve Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_ThePolygon2dOfTheIntPCurvePCurve_hxx <Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#define IntCurve_TheDistBetweenPCurvesOfTheIntPCurvePCurve Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_TheDistBetweenPCurvesOfTheIntPCurvePCurve_hxx <Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#define IntCurve_ExactIntersectionPointOfTheIntPCurvePCurve Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_ExactIntersectionPointOfTheIntPCurvePCurve_hxx <Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#define IntCurve_ThePolygon2dOfTheIntPCurvePCurve Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_ThePolygon2dOfTheIntPCurvePCurve_hxx <Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#define IntCurve_TheDistBetweenPCurvesOfTheIntPCurvePCurve Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_TheDistBetweenPCurvesOfTheIntPCurvePCurve_hxx <Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#define IntCurve_ExactIntersectionPointOfTheIntPCurvePCurve Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_ExactIntersectionPointOfTheIntPCurvePCurve_hxx <Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#define IntCurve_IntCurveCurveGen Geom2dInt_GInter
|
||||
#define IntCurve_IntCurveCurveGen_hxx <Geom2dInt_GInter.hxx>
|
||||
|
||||
#include <IntCurve_IntCurveCurveGen.lxx>
|
||||
|
||||
#undef TheCurve
|
||||
#undef TheCurve_hxx
|
||||
#undef TheCurveTool
|
||||
#undef TheCurveTool_hxx
|
||||
#undef IntCurve_TheProjPCur
|
||||
#undef IntCurve_TheProjPCur_hxx
|
||||
#undef IntCurve_TheCurveLocatorOfTheProjPCur
|
||||
#undef IntCurve_TheCurveLocatorOfTheProjPCur_hxx
|
||||
#undef IntCurve_TheLocateExtPCOfTheProjPCur
|
||||
#undef IntCurve_TheLocateExtPCOfTheProjPCur_hxx
|
||||
#undef IntCurve_TheCurveLocatorOfTheProjPCur
|
||||
#undef IntCurve_TheCurveLocatorOfTheProjPCur_hxx
|
||||
#undef IntCurve_TheLocateExtPCOfTheProjPCur
|
||||
#undef IntCurve_TheLocateExtPCOfTheProjPCur_hxx
|
||||
#undef IntCurve_TheIntConicCurve
|
||||
#undef IntCurve_TheIntConicCurve_hxx
|
||||
#undef IntCurve_TheIntersectorOfTheIntConicCurve
|
||||
#undef IntCurve_TheIntersectorOfTheIntConicCurve_hxx
|
||||
#undef IntCurve_TheIntersectorOfTheIntConicCurve
|
||||
#undef IntCurve_TheIntersectorOfTheIntConicCurve_hxx
|
||||
#undef IntCurve_IntConicCurve
|
||||
#undef IntCurve_IntConicCurve_hxx
|
||||
#undef IntCurve_TheIntPCurvePCurve
|
||||
#undef IntCurve_TheIntPCurvePCurve_hxx
|
||||
#undef IntCurve_ThePolygon2dOfTheIntPCurvePCurve
|
||||
#undef IntCurve_ThePolygon2dOfTheIntPCurvePCurve_hxx
|
||||
#undef IntCurve_TheDistBetweenPCurvesOfTheIntPCurvePCurve
|
||||
#undef IntCurve_TheDistBetweenPCurvesOfTheIntPCurvePCurve_hxx
|
||||
#undef IntCurve_ExactIntersectionPointOfTheIntPCurvePCurve
|
||||
#undef IntCurve_ExactIntersectionPointOfTheIntPCurvePCurve_hxx
|
||||
#undef IntCurve_ThePolygon2dOfTheIntPCurvePCurve
|
||||
#undef IntCurve_ThePolygon2dOfTheIntPCurvePCurve_hxx
|
||||
#undef IntCurve_TheDistBetweenPCurvesOfTheIntPCurvePCurve
|
||||
#undef IntCurve_TheDistBetweenPCurvesOfTheIntPCurvePCurve_hxx
|
||||
#undef IntCurve_ExactIntersectionPointOfTheIntPCurvePCurve
|
||||
#undef IntCurve_ExactIntersectionPointOfTheIntPCurvePCurve_hxx
|
||||
#undef IntCurve_IntCurveCurveGen
|
||||
#undef IntCurve_IntCurveCurveGen_hxx
|
||||
|
||||
|
||||
|
||||
|
||||
#endif // _Geom2dInt_GInter_HeaderFile
|
74
src/Geom2dInt/Geom2dInt_GInter_0.cxx
Normal file
74
src/Geom2dInt/Geom2dInt_GInter_0.cxx
Normal file
@@ -0,0 +1,74 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#include <Geom2dInt_GInter.hxx>
|
||||
|
||||
#include <Standard_ConstructionError.hxx>
|
||||
#include <Adaptor2d_Curve2d.hxx>
|
||||
#include <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#include <Geom2dInt_TheProjPCurOfGInter.hxx>
|
||||
#include <Geom2dInt_TheCurveLocatorOfTheProjPCurOfGInter.hxx>
|
||||
#include <Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#include <Geom2dInt_TheIntConicCurveOfGInter.hxx>
|
||||
#include <Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter.hxx>
|
||||
#include <Geom2dInt_IntConicCurveOfGInter.hxx>
|
||||
#include <Geom2dInt_TheIntPCurvePCurveOfGInter.hxx>
|
||||
#include <Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#include <Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#include <Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#include <IntRes2d_Domain.hxx>
|
||||
|
||||
|
||||
#define TheCurve Adaptor2d_Curve2d
|
||||
#define TheCurve_hxx <Adaptor2d_Curve2d.hxx>
|
||||
#define TheCurveTool Geom2dInt_Geom2dCurveTool
|
||||
#define TheCurveTool_hxx <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#define IntCurve_TheProjPCur Geom2dInt_TheProjPCurOfGInter
|
||||
#define IntCurve_TheProjPCur_hxx <Geom2dInt_TheProjPCurOfGInter.hxx>
|
||||
#define IntCurve_TheCurveLocatorOfTheProjPCur Geom2dInt_TheCurveLocatorOfTheProjPCurOfGInter
|
||||
#define IntCurve_TheCurveLocatorOfTheProjPCur_hxx <Geom2dInt_TheCurveLocatorOfTheProjPCurOfGInter.hxx>
|
||||
#define IntCurve_TheLocateExtPCOfTheProjPCur Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter
|
||||
#define IntCurve_TheLocateExtPCOfTheProjPCur_hxx <Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#define IntCurve_TheCurveLocatorOfTheProjPCur Geom2dInt_TheCurveLocatorOfTheProjPCurOfGInter
|
||||
#define IntCurve_TheCurveLocatorOfTheProjPCur_hxx <Geom2dInt_TheCurveLocatorOfTheProjPCurOfGInter.hxx>
|
||||
#define IntCurve_TheLocateExtPCOfTheProjPCur Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter
|
||||
#define IntCurve_TheLocateExtPCOfTheProjPCur_hxx <Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#define IntCurve_TheIntConicCurve Geom2dInt_TheIntConicCurveOfGInter
|
||||
#define IntCurve_TheIntConicCurve_hxx <Geom2dInt_TheIntConicCurveOfGInter.hxx>
|
||||
#define IntCurve_TheIntersectorOfTheIntConicCurve Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter
|
||||
#define IntCurve_TheIntersectorOfTheIntConicCurve_hxx <Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter.hxx>
|
||||
#define IntCurve_TheIntersectorOfTheIntConicCurve Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter
|
||||
#define IntCurve_TheIntersectorOfTheIntConicCurve_hxx <Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter.hxx>
|
||||
#define IntCurve_IntConicCurve Geom2dInt_IntConicCurveOfGInter
|
||||
#define IntCurve_IntConicCurve_hxx <Geom2dInt_IntConicCurveOfGInter.hxx>
|
||||
#define IntCurve_TheIntPCurvePCurve Geom2dInt_TheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_TheIntPCurvePCurve_hxx <Geom2dInt_TheIntPCurvePCurveOfGInter.hxx>
|
||||
#define IntCurve_ThePolygon2dOfTheIntPCurvePCurve Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_ThePolygon2dOfTheIntPCurvePCurve_hxx <Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#define IntCurve_TheDistBetweenPCurvesOfTheIntPCurvePCurve Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_TheDistBetweenPCurvesOfTheIntPCurvePCurve_hxx <Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#define IntCurve_ExactIntersectionPointOfTheIntPCurvePCurve Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_ExactIntersectionPointOfTheIntPCurvePCurve_hxx <Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#define IntCurve_ThePolygon2dOfTheIntPCurvePCurve Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_ThePolygon2dOfTheIntPCurvePCurve_hxx <Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#define IntCurve_TheDistBetweenPCurvesOfTheIntPCurvePCurve Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_TheDistBetweenPCurvesOfTheIntPCurvePCurve_hxx <Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#define IntCurve_ExactIntersectionPointOfTheIntPCurvePCurve Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_ExactIntersectionPointOfTheIntPCurvePCurve_hxx <Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#define IntCurve_IntCurveCurveGen Geom2dInt_GInter
|
||||
#define IntCurve_IntCurveCurveGen_hxx <Geom2dInt_GInter.hxx>
|
||||
#include <IntCurve_IntCurveCurveGen.gxx>
|
||||
|
@@ -1,178 +0,0 @@
|
||||
-- Created on: 1992-10-22
|
||||
-- Created by: Laurent BUCHARD
|
||||
-- Copyright (c) 1992-1999 Matra Datavision
|
||||
-- Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
--
|
||||
-- This file is part of Open CASCADE Technology software library.
|
||||
--
|
||||
-- This library is free software; you can redistribute it and/or modify it under
|
||||
-- the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
-- by the Free Software Foundation, with special exception defined in the file
|
||||
-- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
-- distribution for complete text of the license and disclaimer of any warranty.
|
||||
--
|
||||
-- Alternatively, this file may be used under the terms of Open CASCADE
|
||||
-- commercial license or contractual agreement.
|
||||
|
||||
class Geom2dCurveTool from Geom2dInt
|
||||
|
||||
|
||||
---Purpose: This class provides a Geom2dCurveTool as < Geom2dCurveTool from IntCurve >
|
||||
-- from a Tool as < Geom2dCurveTool from Adaptor3d > .
|
||||
|
||||
uses
|
||||
|
||||
Pnt2d from gp,
|
||||
Vec2d from gp,
|
||||
Lin2d from gp,
|
||||
Circ2d from gp,
|
||||
Elips2d from gp,
|
||||
Parab2d from gp,
|
||||
Hypr2d from gp,
|
||||
Array1OfReal from TColStd,
|
||||
CurveType from GeomAbs,
|
||||
Curve2d from Adaptor2d
|
||||
|
||||
|
||||
is
|
||||
|
||||
|
||||
GetType(myclass; C: Curve2d from Adaptor2d)
|
||||
---C++: inline
|
||||
returns CurveType from GeomAbs;
|
||||
|
||||
IsComposite(myclass; C: Curve2d from Adaptor2d)
|
||||
---C++: inline
|
||||
returns Boolean from Standard;
|
||||
|
||||
Line(myclass; C: Curve2d from Adaptor2d)
|
||||
|
||||
---Purpose: Returns the Lin2d from gp corresponding to the curve C.
|
||||
-- This method is called only when TheType returns
|
||||
-- GeomAbs_Line.
|
||||
---C++: inline
|
||||
returns Lin2d from gp;
|
||||
|
||||
|
||||
Circle(myclass; C: Curve2d from Adaptor2d)
|
||||
|
||||
---Purpose: Returns the Circ2d from gp corresponding to the curve C.
|
||||
-- This method is called only when TheType returns
|
||||
-- GeomAbs_Circle.
|
||||
---C++: inline
|
||||
returns Circ2d from gp;
|
||||
|
||||
|
||||
Ellipse(myclass; C: Curve2d from Adaptor2d)
|
||||
|
||||
---Purpose: Returns the Elips2d from gp corresponding to the curve C.
|
||||
-- This method is called only when TheType returns
|
||||
-- GeomAbs_Ellipse.
|
||||
---C++: inline
|
||||
returns Elips2d from gp;
|
||||
|
||||
|
||||
Parabola(myclass; C: Curve2d from Adaptor2d)
|
||||
|
||||
---Purpose: Returns the Parab2d from gp corresponding to the curve C.
|
||||
-- This method is called only when TheType returns
|
||||
-- GeomAbs_Parabola.
|
||||
---C++: inline
|
||||
returns Parab2d from gp;
|
||||
|
||||
|
||||
Hyperbola(myclass; C: Curve2d from Adaptor2d)
|
||||
|
||||
---Purpose: Returns the Hypr2d from gp corresponding to the curve C.
|
||||
-- This method is called only when TheType returns
|
||||
-- GeomAbs_Hyperbola.
|
||||
---C++: inline
|
||||
returns Hypr2d from gp;
|
||||
|
||||
|
||||
-- The following method are used only when TheType returns IntCurve_Other.
|
||||
|
||||
|
||||
EpsX (myclass; C: Curve2d from Adaptor2d)
|
||||
---C++: inline
|
||||
returns Real;
|
||||
|
||||
EpsX (myclass; C: Curve2d from Adaptor2d;
|
||||
Eps_XYZ : Real from Standard)
|
||||
---C++: inline
|
||||
returns Real;
|
||||
|
||||
|
||||
NbSamples(myclass; C: Curve2d from Adaptor2d)
|
||||
|
||||
returns Integer;
|
||||
|
||||
NbSamples(myclass; C: Curve2d from Adaptor2d; U0,U1: Real from Standard)
|
||||
|
||||
returns Integer;
|
||||
|
||||
|
||||
FirstParameter(myclass; C:Curve2d from Adaptor2d)
|
||||
---C++: inline
|
||||
returns Real;
|
||||
|
||||
|
||||
LastParameter(myclass; C:Curve2d from Adaptor2d)
|
||||
---C++: inline
|
||||
returns Real;
|
||||
|
||||
|
||||
Value (myclass; C: Curve2d from Adaptor2d; X: Real)
|
||||
---C++: inline
|
||||
returns Pnt2d from gp;
|
||||
|
||||
|
||||
D0 (myclass; C: Curve2d from Adaptor2d; U: Real ;
|
||||
P: out Pnt2d);
|
||||
---C++: inline
|
||||
|
||||
D1 (myclass; C: Curve2d from Adaptor2d; U: Real ;
|
||||
P: out Pnt2d; T: out Vec2d);
|
||||
---C++: inline
|
||||
|
||||
D2 (myclass; C: Curve2d from Adaptor2d; U: Real ;
|
||||
P: out Pnt2d; T,N: out Vec2d);
|
||||
---C++: inline
|
||||
|
||||
D3 (myclass; C: Curve2d from Adaptor2d; U: Real ;
|
||||
P: out Pnt2d; T,N,V: out Vec2d);
|
||||
---C++: inline
|
||||
|
||||
DN(myclass; C: Curve2d from Adaptor2d; U: Real ;
|
||||
N: Integer from Standard)
|
||||
returns Vec2d;
|
||||
---C++: inline
|
||||
|
||||
NbIntervals(myclass ; C: Curve2d from Adaptor2d)
|
||||
---Purpose : output the number of interval of continuity C2 of
|
||||
-- the curve
|
||||
---C++: inline
|
||||
returns Integer from Standard;
|
||||
|
||||
Intervals (myclass; C: Curve2d from Adaptor2d
|
||||
; Tab : out Array1OfReal from TColStd);
|
||||
---Purpose: compute Tab.
|
||||
---C++: inline
|
||||
|
||||
GetInterval (myclass; C: Curve2d from Adaptor2d
|
||||
; Index : Integer from Standard
|
||||
; Tab : Array1OfReal from TColStd
|
||||
; U1, U2 : out Real from Standard);
|
||||
---Purpose : output the bounds of interval of index <Index>
|
||||
-- used if Type == Composite.
|
||||
---C++: inline
|
||||
|
||||
Degree(myclass; C : Curve2d from Adaptor2d) returns Integer from Standard;
|
||||
---C++: inline
|
||||
|
||||
|
||||
end Geom2dCurveTool;
|
||||
|
||||
|
||||
|
||||
|
@@ -14,15 +14,14 @@
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#include <Geom2dInt_Geom2dCurveTool.ixx>
|
||||
|
||||
#include <GeomAbs_CurveType.hxx>
|
||||
#include <Geom2d_BezierCurve.hxx>
|
||||
#include <Geom2d_BSplineCurve.hxx>
|
||||
#include <Geom2d_BezierCurve.hxx>
|
||||
#include <Geom2d_BSplineCurve.hxx>
|
||||
|
||||
#include <Adaptor2d_Curve2d.hxx>
|
||||
#include <Geom2d_BezierCurve.hxx>
|
||||
#include <Geom2d_BSplineCurve.hxx>
|
||||
#include <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#include <GeomAbs_CurveType.hxx>
|
||||
#include <gp_Pnt2d.hxx>
|
||||
#include <gp_Vec2d.hxx>
|
||||
|
||||
//============================================================
|
||||
Standard_Integer Geom2dInt_Geom2dCurveTool::NbSamples (const Adaptor2d_Curve2d& C,
|
||||
|
140
src/Geom2dInt/Geom2dInt_Geom2dCurveTool.hxx
Normal file
140
src/Geom2dInt/Geom2dInt_Geom2dCurveTool.hxx
Normal file
@@ -0,0 +1,140 @@
|
||||
// Created on: 1992-10-22
|
||||
// Created by: Laurent BUCHARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#ifndef _Geom2dInt_Geom2dCurveTool_HeaderFile
|
||||
#define _Geom2dInt_Geom2dCurveTool_HeaderFile
|
||||
|
||||
#include <Standard.hxx>
|
||||
#include <Standard_DefineAlloc.hxx>
|
||||
#include <Standard_Handle.hxx>
|
||||
|
||||
#include <GeomAbs_CurveType.hxx>
|
||||
#include <Standard_Boolean.hxx>
|
||||
#include <gp_Lin2d.hxx>
|
||||
#include <gp_Circ2d.hxx>
|
||||
#include <gp_Elips2d.hxx>
|
||||
#include <gp_Parab2d.hxx>
|
||||
#include <gp_Hypr2d.hxx>
|
||||
#include <Standard_Real.hxx>
|
||||
#include <Standard_Integer.hxx>
|
||||
#include <gp_Pnt2d.hxx>
|
||||
#include <gp_Vec2d.hxx>
|
||||
#include <TColStd_Array1OfReal.hxx>
|
||||
class Adaptor2d_Curve2d;
|
||||
class gp_Pnt2d;
|
||||
class gp_Vec2d;
|
||||
|
||||
|
||||
//! This class provides a Geom2dCurveTool as < Geom2dCurveTool from IntCurve >
|
||||
//! from a Tool as < Geom2dCurveTool from Adaptor3d > .
|
||||
class Geom2dInt_Geom2dCurveTool
|
||||
{
|
||||
public:
|
||||
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
|
||||
static GeomAbs_CurveType GetType (const Adaptor2d_Curve2d& C);
|
||||
|
||||
static Standard_Boolean IsComposite (const Adaptor2d_Curve2d& C);
|
||||
|
||||
//! Returns the Lin2d from gp corresponding to the curve C.
|
||||
//! This method is called only when TheType returns
|
||||
//! GeomAbs_Line.
|
||||
static gp_Lin2d Line (const Adaptor2d_Curve2d& C);
|
||||
|
||||
//! Returns the Circ2d from gp corresponding to the curve C.
|
||||
//! This method is called only when TheType returns
|
||||
//! GeomAbs_Circle.
|
||||
static gp_Circ2d Circle (const Adaptor2d_Curve2d& C);
|
||||
|
||||
//! Returns the Elips2d from gp corresponding to the curve C.
|
||||
//! This method is called only when TheType returns
|
||||
//! GeomAbs_Ellipse.
|
||||
static gp_Elips2d Ellipse (const Adaptor2d_Curve2d& C);
|
||||
|
||||
//! Returns the Parab2d from gp corresponding to the curve C.
|
||||
//! This method is called only when TheType returns
|
||||
//! GeomAbs_Parabola.
|
||||
static gp_Parab2d Parabola (const Adaptor2d_Curve2d& C);
|
||||
|
||||
//! Returns the Hypr2d from gp corresponding to the curve C.
|
||||
//! This method is called only when TheType returns
|
||||
//! GeomAbs_Hyperbola.
|
||||
static gp_Hypr2d Hyperbola (const Adaptor2d_Curve2d& C);
|
||||
|
||||
static Standard_Real EpsX (const Adaptor2d_Curve2d& C);
|
||||
|
||||
static Standard_Real EpsX (const Adaptor2d_Curve2d& C, const Standard_Real Eps_XYZ);
|
||||
|
||||
Standard_EXPORT static Standard_Integer NbSamples (const Adaptor2d_Curve2d& C);
|
||||
|
||||
Standard_EXPORT static Standard_Integer NbSamples (const Adaptor2d_Curve2d& C, const Standard_Real U0, const Standard_Real U1);
|
||||
|
||||
static Standard_Real FirstParameter (const Adaptor2d_Curve2d& C);
|
||||
|
||||
static Standard_Real LastParameter (const Adaptor2d_Curve2d& C);
|
||||
|
||||
static gp_Pnt2d Value (const Adaptor2d_Curve2d& C, const Standard_Real X);
|
||||
|
||||
static void D0 (const Adaptor2d_Curve2d& C, const Standard_Real U, gp_Pnt2d& P);
|
||||
|
||||
static void D1 (const Adaptor2d_Curve2d& C, const Standard_Real U, gp_Pnt2d& P, gp_Vec2d& T);
|
||||
|
||||
static void D2 (const Adaptor2d_Curve2d& C, const Standard_Real U, gp_Pnt2d& P, gp_Vec2d& T, gp_Vec2d& N);
|
||||
|
||||
static void D3 (const Adaptor2d_Curve2d& C, const Standard_Real U, gp_Pnt2d& P, gp_Vec2d& T, gp_Vec2d& N, gp_Vec2d& V);
|
||||
|
||||
static gp_Vec2d DN (const Adaptor2d_Curve2d& C, const Standard_Real U, const Standard_Integer N);
|
||||
|
||||
//! output the number of interval of continuity C2 of
|
||||
//! the curve
|
||||
static Standard_Integer NbIntervals (const Adaptor2d_Curve2d& C);
|
||||
|
||||
//! compute Tab.
|
||||
static void Intervals (const Adaptor2d_Curve2d& C, TColStd_Array1OfReal& Tab);
|
||||
|
||||
//! output the bounds of interval of index <Index>
|
||||
//! used if Type == Composite.
|
||||
static void GetInterval (const Adaptor2d_Curve2d& C, const Standard_Integer Index, const TColStd_Array1OfReal& Tab, Standard_Real& U1, Standard_Real& U2);
|
||||
|
||||
static Standard_Integer Degree (const Adaptor2d_Curve2d& C);
|
||||
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
private:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
#include <Geom2dInt_Geom2dCurveTool.lxx>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#endif // _Geom2dInt_Geom2dCurveTool_HeaderFile
|
111
src/Geom2dInt/Geom2dInt_IntConicCurveOfGInter.hxx
Normal file
111
src/Geom2dInt/Geom2dInt_IntConicCurveOfGInter.hxx
Normal file
@@ -0,0 +1,111 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#ifndef _Geom2dInt_IntConicCurveOfGInter_HeaderFile
|
||||
#define _Geom2dInt_IntConicCurveOfGInter_HeaderFile
|
||||
|
||||
#include <Standard.hxx>
|
||||
#include <Standard_DefineAlloc.hxx>
|
||||
#include <Standard_Handle.hxx>
|
||||
|
||||
#include <Standard_Real.hxx>
|
||||
#include <IntCurve_IntConicConic.hxx>
|
||||
#include <Geom2dInt_TheIntConicCurveOfGInter.hxx>
|
||||
#include <IntRes2d_Intersection.hxx>
|
||||
#include <Standard_Boolean.hxx>
|
||||
class Standard_ConstructionError;
|
||||
class IntCurve_IConicTool;
|
||||
class Adaptor2d_Curve2d;
|
||||
class Geom2dInt_Geom2dCurveTool;
|
||||
class Geom2dInt_TheIntConicCurveOfGInter;
|
||||
class gp_Lin2d;
|
||||
class IntRes2d_Domain;
|
||||
class gp_Circ2d;
|
||||
class gp_Elips2d;
|
||||
class gp_Parab2d;
|
||||
class gp_Hypr2d;
|
||||
|
||||
|
||||
|
||||
class Geom2dInt_IntConicCurveOfGInter : public IntRes2d_Intersection
|
||||
{
|
||||
public:
|
||||
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
|
||||
Standard_EXPORT Geom2dInt_IntConicCurveOfGInter();
|
||||
|
||||
Standard_EXPORT Geom2dInt_IntConicCurveOfGInter(const gp_Lin2d& L, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT Geom2dInt_IntConicCurveOfGInter(const gp_Circ2d& C, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT Geom2dInt_IntConicCurveOfGInter(const gp_Elips2d& E, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT Geom2dInt_IntConicCurveOfGInter(const gp_Parab2d& Prb, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT Geom2dInt_IntConicCurveOfGInter(const gp_Hypr2d& H, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT void Perform (const gp_Lin2d& L, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT void Perform (const gp_Circ2d& C, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT void Perform (const gp_Elips2d& E, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT void Perform (const gp_Parab2d& Prb, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT void Perform (const gp_Hypr2d& H, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
private:
|
||||
|
||||
|
||||
Standard_EXPORT void InternalPerform (const gp_Lin2d& Lin1, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol, const Standard_Boolean Composite);
|
||||
|
||||
Standard_EXPORT void InternalPerform (const gp_Circ2d& Circ1, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol, const Standard_Boolean Composite);
|
||||
|
||||
Standard_EXPORT void InternalPerform (const gp_Elips2d& Eli1, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol, const Standard_Boolean Composite);
|
||||
|
||||
Standard_EXPORT void InternalPerform (const gp_Parab2d& Prb1, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol, const Standard_Boolean Composite);
|
||||
|
||||
Standard_EXPORT void InternalPerform (const gp_Hypr2d& Hpr1, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol, const Standard_Boolean Composite);
|
||||
|
||||
|
||||
Standard_Real param1inf;
|
||||
Standard_Real param1sup;
|
||||
Standard_Real param2inf;
|
||||
Standard_Real param2sup;
|
||||
IntCurve_IntConicConic intconiconi;
|
||||
Geom2dInt_TheIntConicCurveOfGInter intconicurv;
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#endif // _Geom2dInt_IntConicCurveOfGInter_HeaderFile
|
43
src/Geom2dInt/Geom2dInt_IntConicCurveOfGInter_0.cxx
Normal file
43
src/Geom2dInt/Geom2dInt_IntConicCurveOfGInter_0.cxx
Normal file
@@ -0,0 +1,43 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#include <Geom2dInt_IntConicCurveOfGInter.hxx>
|
||||
|
||||
#include <Standard_ConstructionError.hxx>
|
||||
#include <IntCurve_IConicTool.hxx>
|
||||
#include <Adaptor2d_Curve2d.hxx>
|
||||
#include <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#include <Geom2dInt_TheIntConicCurveOfGInter.hxx>
|
||||
#include <gp_Lin2d.hxx>
|
||||
#include <IntRes2d_Domain.hxx>
|
||||
#include <gp_Circ2d.hxx>
|
||||
#include <gp_Elips2d.hxx>
|
||||
#include <gp_Parab2d.hxx>
|
||||
#include <gp_Hypr2d.hxx>
|
||||
|
||||
|
||||
#define TheImpTool IntCurve_IConicTool
|
||||
#define TheImpTool_hxx <IntCurve_IConicTool.hxx>
|
||||
#define ThePCurve Adaptor2d_Curve2d
|
||||
#define ThePCurve_hxx <Adaptor2d_Curve2d.hxx>
|
||||
#define ThePCurveTool Geom2dInt_Geom2dCurveTool
|
||||
#define ThePCurveTool_hxx <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#define TheIntConicCurve Geom2dInt_TheIntConicCurveOfGInter
|
||||
#define TheIntConicCurve_hxx <Geom2dInt_TheIntConicCurveOfGInter.hxx>
|
||||
#define IntCurve_UserIntConicCurveGen Geom2dInt_IntConicCurveOfGInter
|
||||
#define IntCurve_UserIntConicCurveGen_hxx <Geom2dInt_IntConicCurveOfGInter.hxx>
|
||||
#include <IntCurve_UserIntConicCurveGen.gxx>
|
||||
|
@@ -0,0 +1,75 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#ifndef _Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter_HeaderFile
|
||||
#define _Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter_HeaderFile
|
||||
|
||||
#include <Standard.hxx>
|
||||
#include <Standard_DefineAlloc.hxx>
|
||||
#include <Standard_Handle.hxx>
|
||||
|
||||
#include <Standard_Address.hxx>
|
||||
#include <IntCurve_IConicTool.hxx>
|
||||
#include <math_FunctionWithDerivative.hxx>
|
||||
#include <Standard_Boolean.hxx>
|
||||
#include <Standard_Real.hxx>
|
||||
class IntCurve_IConicTool;
|
||||
class Adaptor2d_Curve2d;
|
||||
class Geom2dInt_Geom2dCurveTool;
|
||||
|
||||
|
||||
|
||||
class Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter : public math_FunctionWithDerivative
|
||||
{
|
||||
public:
|
||||
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
|
||||
Standard_EXPORT Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter(const IntCurve_IConicTool& IT, const Adaptor2d_Curve2d& PC);
|
||||
|
||||
Standard_EXPORT Standard_Boolean Value (const Standard_Real Param, Standard_Real& F) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Standard_Boolean Derivative (const Standard_Real Param, Standard_Real& D) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Standard_Boolean Values (const Standard_Real Param, Standard_Real& F, Standard_Real& D) Standard_OVERRIDE;
|
||||
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
private:
|
||||
|
||||
|
||||
|
||||
Standard_Address TheParCurve;
|
||||
IntCurve_IConicTool TheImpTool;
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#endif // _Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter_HeaderFile
|
@@ -0,0 +1,33 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#include <Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter.hxx>
|
||||
|
||||
#include <IntCurve_IConicTool.hxx>
|
||||
#include <Adaptor2d_Curve2d.hxx>
|
||||
#include <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
|
||||
|
||||
#define ImpTool IntCurve_IConicTool
|
||||
#define ImpTool_hxx <IntCurve_IConicTool.hxx>
|
||||
#define ParCurve Adaptor2d_Curve2d
|
||||
#define ParCurve_hxx <Adaptor2d_Curve2d.hxx>
|
||||
#define ParTool Geom2dInt_Geom2dCurveTool
|
||||
#define ParTool_hxx <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#define IntImpParGen_ImpParTool Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter
|
||||
#define IntImpParGen_ImpParTool_hxx <Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter.hxx>
|
||||
#include <IntImpParGen_ImpParTool.gxx>
|
||||
|
@@ -0,0 +1,118 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#ifndef _Geom2dInt_PCLocFOfTheLocateExtPCOfTheProjPCurOfGInter_HeaderFile
|
||||
#define _Geom2dInt_PCLocFOfTheLocateExtPCOfTheProjPCurOfGInter_HeaderFile
|
||||
|
||||
#include <Standard.hxx>
|
||||
#include <Standard_DefineAlloc.hxx>
|
||||
#include <Standard_Handle.hxx>
|
||||
|
||||
#include <gp_Pnt2d.hxx>
|
||||
#include <Standard_Address.hxx>
|
||||
#include <Standard_Real.hxx>
|
||||
#include <TColStd_SequenceOfReal.hxx>
|
||||
#include <TColStd_SequenceOfInteger.hxx>
|
||||
#include <Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#include <Standard_Boolean.hxx>
|
||||
#include <Standard_Integer.hxx>
|
||||
#include <math_FunctionWithDerivative.hxx>
|
||||
class Standard_OutOfRange;
|
||||
class Standard_TypeMismatch;
|
||||
class Adaptor2d_Curve2d;
|
||||
class Geom2dInt_Geom2dCurveTool;
|
||||
class Extrema_POnCurv2d;
|
||||
class gp_Pnt2d;
|
||||
class gp_Vec2d;
|
||||
class Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter;
|
||||
class Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter;
|
||||
|
||||
|
||||
|
||||
class Geom2dInt_PCLocFOfTheLocateExtPCOfTheProjPCurOfGInter : public math_FunctionWithDerivative
|
||||
{
|
||||
public:
|
||||
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
|
||||
Standard_EXPORT Geom2dInt_PCLocFOfTheLocateExtPCOfTheProjPCurOfGInter();
|
||||
|
||||
Standard_EXPORT Geom2dInt_PCLocFOfTheLocateExtPCOfTheProjPCurOfGInter(const gp_Pnt2d& P, const Adaptor2d_Curve2d& C);
|
||||
|
||||
Standard_EXPORT void Initialize (const Adaptor2d_Curve2d& C);
|
||||
|
||||
Standard_EXPORT void SetPoint (const gp_Pnt2d& P);
|
||||
|
||||
Standard_EXPORT Standard_Boolean Value (const Standard_Real U, Standard_Real& F);
|
||||
|
||||
Standard_EXPORT Standard_Boolean Derivative (const Standard_Real U, Standard_Real& DF);
|
||||
|
||||
Standard_EXPORT Standard_Boolean Values (const Standard_Real U, Standard_Real& F, Standard_Real& DF);
|
||||
|
||||
Standard_EXPORT virtual Standard_Integer GetStateNumber() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Standard_Integer NbExt() const;
|
||||
|
||||
Standard_EXPORT Standard_Real SquareDistance (const Standard_Integer N) const;
|
||||
|
||||
Standard_EXPORT Standard_Boolean IsMin (const Standard_Integer N) const;
|
||||
|
||||
Standard_EXPORT const Extrema_POnCurv2d& Point (const Standard_Integer N) const;
|
||||
|
||||
Standard_EXPORT void SubIntervalInitialize (const Standard_Real theUfirst, const Standard_Real theUlast);
|
||||
|
||||
Standard_EXPORT Standard_Real SearchOfTolerance();
|
||||
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
private:
|
||||
|
||||
|
||||
|
||||
gp_Pnt2d myP;
|
||||
Standard_Address myC;
|
||||
Standard_Real myU;
|
||||
gp_Pnt2d myPc;
|
||||
Standard_Real myD1f;
|
||||
TColStd_SequenceOfReal mySqDist;
|
||||
TColStd_SequenceOfInteger myIsMin;
|
||||
Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter myPoint;
|
||||
Standard_Boolean myPinit;
|
||||
Standard_Boolean myCinit;
|
||||
Standard_Boolean myD1Init;
|
||||
Standard_Real myTol;
|
||||
Standard_Integer myMaxDerivOrder;
|
||||
Standard_Real myUinfium;
|
||||
Standard_Real myUsupremum;
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#endif // _Geom2dInt_PCLocFOfTheLocateExtPCOfTheProjPCurOfGInter_HeaderFile
|
@@ -0,0 +1,51 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#include <Geom2dInt_PCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
|
||||
#include <Standard_OutOfRange.hxx>
|
||||
#include <Standard_TypeMismatch.hxx>
|
||||
#include <Adaptor2d_Curve2d.hxx>
|
||||
#include <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#include <Extrema_POnCurv2d.hxx>
|
||||
#include <gp_Pnt2d.hxx>
|
||||
#include <gp_Vec2d.hxx>
|
||||
#include <Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#include <Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
|
||||
|
||||
#define Curve Adaptor2d_Curve2d
|
||||
#define Curve_hxx <Adaptor2d_Curve2d.hxx>
|
||||
#define Tool Geom2dInt_Geom2dCurveTool
|
||||
#define Tool_hxx <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#define POnC Extrema_POnCurv2d
|
||||
#define POnC_hxx <Extrema_POnCurv2d.hxx>
|
||||
#define Pnt gp_Pnt2d
|
||||
#define Pnt_hxx <gp_Pnt2d.hxx>
|
||||
#define Vec gp_Vec2d
|
||||
#define Vec_hxx <gp_Vec2d.hxx>
|
||||
#define Extrema_SeqPC Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter
|
||||
#define Extrema_SeqPC_hxx <Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#define Extrema_SequenceNodeOfSeqPC Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter
|
||||
#define Extrema_SequenceNodeOfSeqPC_hxx <Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#define Extrema_SequenceNodeOfSeqPC Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter
|
||||
#define Extrema_SequenceNodeOfSeqPC_hxx <Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#define Handle_Extrema_SequenceNodeOfSeqPC Handle(Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter)
|
||||
#define Handle_Extrema_SequenceNodeOfSeqPC Handle(Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter)
|
||||
#define Extrema_FuncExtPC Geom2dInt_PCLocFOfTheLocateExtPCOfTheProjPCurOfGInter
|
||||
#define Extrema_FuncExtPC_hxx <Geom2dInt_PCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#include <Extrema_FuncExtPC.gxx>
|
||||
|
@@ -0,0 +1,134 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#ifndef _Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter_HeaderFile
|
||||
#define _Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter_HeaderFile
|
||||
|
||||
#include <Standard.hxx>
|
||||
#include <Standard_DefineAlloc.hxx>
|
||||
#include <Standard_Handle.hxx>
|
||||
|
||||
#include <TCollection_BaseSequence.hxx>
|
||||
#include <Standard_Integer.hxx>
|
||||
class Standard_NoSuchObject;
|
||||
class Standard_OutOfRange;
|
||||
class Extrema_POnCurv2d;
|
||||
class Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter;
|
||||
|
||||
|
||||
|
||||
class Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter : public TCollection_BaseSequence
|
||||
{
|
||||
public:
|
||||
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
|
||||
Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter();
|
||||
|
||||
Standard_EXPORT Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter(const Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter& Other);
|
||||
|
||||
Standard_EXPORT void Clear();
|
||||
~Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter()
|
||||
{
|
||||
Clear();
|
||||
}
|
||||
|
||||
Standard_EXPORT const Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter& Assign (const Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter& Other);
|
||||
const Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter& operator = (const Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter& Other)
|
||||
{
|
||||
return Assign(Other);
|
||||
}
|
||||
|
||||
Standard_EXPORT void Append (const Extrema_POnCurv2d& T);
|
||||
|
||||
void Append (Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter& S);
|
||||
|
||||
Standard_EXPORT void Prepend (const Extrema_POnCurv2d& T);
|
||||
|
||||
void Prepend (Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter& S);
|
||||
|
||||
void InsertBefore (const Standard_Integer Index, const Extrema_POnCurv2d& T);
|
||||
|
||||
void InsertBefore (const Standard_Integer Index, Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter& S);
|
||||
|
||||
Standard_EXPORT void InsertAfter (const Standard_Integer Index, const Extrema_POnCurv2d& T);
|
||||
|
||||
void InsertAfter (const Standard_Integer Index, Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter& S);
|
||||
|
||||
Standard_EXPORT const Extrema_POnCurv2d& First() const;
|
||||
|
||||
Standard_EXPORT const Extrema_POnCurv2d& Last() const;
|
||||
|
||||
void Split (const Standard_Integer Index, Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter& Sub);
|
||||
|
||||
Standard_EXPORT const Extrema_POnCurv2d& Value (const Standard_Integer Index) const;
|
||||
const Extrema_POnCurv2d& operator() (const Standard_Integer Index) const
|
||||
{
|
||||
return Value(Index);
|
||||
}
|
||||
|
||||
Standard_EXPORT void SetValue (const Standard_Integer Index, const Extrema_POnCurv2d& I);
|
||||
|
||||
Standard_EXPORT Extrema_POnCurv2d& ChangeValue (const Standard_Integer Index);
|
||||
Extrema_POnCurv2d& operator() (const Standard_Integer Index)
|
||||
{
|
||||
return ChangeValue(Index);
|
||||
}
|
||||
|
||||
Standard_EXPORT void Remove (const Standard_Integer Index);
|
||||
|
||||
Standard_EXPORT void Remove (const Standard_Integer FromIndex, const Standard_Integer ToIndex);
|
||||
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
private:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
};
|
||||
|
||||
#define SeqItem Extrema_POnCurv2d
|
||||
#define SeqItem_hxx <Extrema_POnCurv2d.hxx>
|
||||
#define TCollection_SequenceNode Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter
|
||||
#define TCollection_SequenceNode_hxx <Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#define Handle_TCollection_SequenceNode Handle(Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter)
|
||||
#define TCollection_Sequence Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter
|
||||
#define TCollection_Sequence_hxx <Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
|
||||
#include <TCollection_Sequence.lxx>
|
||||
|
||||
#undef SeqItem
|
||||
#undef SeqItem_hxx
|
||||
#undef TCollection_SequenceNode
|
||||
#undef TCollection_SequenceNode_hxx
|
||||
#undef Handle_TCollection_SequenceNode
|
||||
#undef TCollection_Sequence
|
||||
#undef TCollection_Sequence_hxx
|
||||
|
||||
|
||||
|
||||
|
||||
#endif // _Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter_HeaderFile
|
@@ -0,0 +1,33 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#include <Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
|
||||
#include <Standard_NoSuchObject.hxx>
|
||||
#include <Standard_OutOfRange.hxx>
|
||||
#include <Extrema_POnCurv2d.hxx>
|
||||
#include <Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
|
||||
|
||||
#define SeqItem Extrema_POnCurv2d
|
||||
#define SeqItem_hxx <Extrema_POnCurv2d.hxx>
|
||||
#define TCollection_SequenceNode Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter
|
||||
#define TCollection_SequenceNode_hxx <Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#define Handle_TCollection_SequenceNode Handle(Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter)
|
||||
#define TCollection_Sequence Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter
|
||||
#define TCollection_Sequence_hxx <Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#include <TCollection_Sequence.gxx>
|
||||
|
@@ -0,0 +1,83 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#ifndef _Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter_HeaderFile
|
||||
#define _Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter_HeaderFile
|
||||
|
||||
#include <Standard.hxx>
|
||||
#include <Standard_Type.hxx>
|
||||
|
||||
#include <Extrema_POnCurv2d.hxx>
|
||||
#include <TCollection_SeqNode.hxx>
|
||||
#include <TCollection_SeqNodePtr.hxx>
|
||||
class Extrema_POnCurv2d;
|
||||
class Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter;
|
||||
|
||||
|
||||
class Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter;
|
||||
DEFINE_STANDARD_HANDLE(Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter, TCollection_SeqNode)
|
||||
|
||||
|
||||
class Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter : public TCollection_SeqNode
|
||||
{
|
||||
|
||||
public:
|
||||
|
||||
|
||||
Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter(const Extrema_POnCurv2d& I, const TCollection_SeqNodePtr& n, const TCollection_SeqNodePtr& p);
|
||||
|
||||
Extrema_POnCurv2d& Value() const;
|
||||
|
||||
|
||||
|
||||
|
||||
DEFINE_STANDARD_RTTI(Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter,TCollection_SeqNode)
|
||||
|
||||
protected:
|
||||
|
||||
|
||||
|
||||
|
||||
private:
|
||||
|
||||
|
||||
Extrema_POnCurv2d myValue;
|
||||
|
||||
|
||||
};
|
||||
|
||||
#define SeqItem Extrema_POnCurv2d
|
||||
#define SeqItem_hxx <Extrema_POnCurv2d.hxx>
|
||||
#define TCollection_SequenceNode Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter
|
||||
#define TCollection_SequenceNode_hxx <Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#define Handle_TCollection_SequenceNode Handle(Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter)
|
||||
#define TCollection_Sequence Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter
|
||||
#define TCollection_Sequence_hxx <Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
|
||||
#include <TCollection_SequenceNode.lxx>
|
||||
|
||||
#undef SeqItem
|
||||
#undef SeqItem_hxx
|
||||
#undef TCollection_SequenceNode
|
||||
#undef TCollection_SequenceNode_hxx
|
||||
#undef Handle_TCollection_SequenceNode
|
||||
#undef TCollection_Sequence
|
||||
#undef TCollection_Sequence_hxx
|
||||
|
||||
|
||||
|
||||
|
||||
#endif // _Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter_HeaderFile
|
@@ -0,0 +1,41 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#include <Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
|
||||
#include <Standard_Type.hxx>
|
||||
|
||||
#include <Extrema_POnCurv2d.hxx>
|
||||
#include <Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#define SeqItem Extrema_POnCurv2d
|
||||
#define SeqItem_hxx <Extrema_POnCurv2d.hxx>
|
||||
#define TCollection_SequenceNode Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter
|
||||
#define TCollection_SequenceNode_hxx <Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#define Handle_TCollection_SequenceNode Handle(Geom2dInt_SequenceNodeOfSeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter)
|
||||
#define TCollection_Sequence Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter
|
||||
#define TCollection_Sequence_hxx <Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#include <TCollection_SequenceNode.gxx>
|
||||
|
@@ -0,0 +1,69 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#ifndef _Geom2dInt_TheCurveLocatorOfTheProjPCurOfGInter_HeaderFile
|
||||
#define _Geom2dInt_TheCurveLocatorOfTheProjPCurOfGInter_HeaderFile
|
||||
|
||||
#include <Standard.hxx>
|
||||
#include <Standard_DefineAlloc.hxx>
|
||||
#include <Standard_Handle.hxx>
|
||||
|
||||
#include <Standard_Integer.hxx>
|
||||
#include <Standard_Real.hxx>
|
||||
class Adaptor2d_Curve2d;
|
||||
class Geom2dInt_Geom2dCurveTool;
|
||||
class Extrema_POnCurv2d;
|
||||
class gp_Pnt2d;
|
||||
|
||||
|
||||
|
||||
class Geom2dInt_TheCurveLocatorOfTheProjPCurOfGInter
|
||||
{
|
||||
public:
|
||||
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
|
||||
Standard_EXPORT static void Locate (const gp_Pnt2d& P, const Adaptor2d_Curve2d& C, const Standard_Integer NbU, Extrema_POnCurv2d& Papp);
|
||||
|
||||
Standard_EXPORT static void Locate (const gp_Pnt2d& P, const Adaptor2d_Curve2d& C, const Standard_Integer NbU, const Standard_Real Umin, const Standard_Real Usup, Extrema_POnCurv2d& Papp);
|
||||
|
||||
Standard_EXPORT static void Locate (const Adaptor2d_Curve2d& C1, const Adaptor2d_Curve2d& C2, const Standard_Integer NbU, const Standard_Integer NbV, Extrema_POnCurv2d& Papp1, Extrema_POnCurv2d& Papp2);
|
||||
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
private:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#endif // _Geom2dInt_TheCurveLocatorOfTheProjPCurOfGInter_HeaderFile
|
@@ -0,0 +1,40 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#include <Geom2dInt_TheCurveLocatorOfTheProjPCurOfGInter.hxx>
|
||||
|
||||
#include <Adaptor2d_Curve2d.hxx>
|
||||
#include <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#include <Extrema_POnCurv2d.hxx>
|
||||
#include <gp_Pnt2d.hxx>
|
||||
|
||||
|
||||
#define Curve1 Adaptor2d_Curve2d
|
||||
#define Curve1_hxx <Adaptor2d_Curve2d.hxx>
|
||||
#define Tool1 Geom2dInt_Geom2dCurveTool
|
||||
#define Tool1_hxx <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#define Curve2 Adaptor2d_Curve2d
|
||||
#define Curve2_hxx <Adaptor2d_Curve2d.hxx>
|
||||
#define Tool2 Geom2dInt_Geom2dCurveTool
|
||||
#define Tool2_hxx <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#define POnC Extrema_POnCurv2d
|
||||
#define POnC_hxx <Extrema_POnCurv2d.hxx>
|
||||
#define Pnt gp_Pnt2d
|
||||
#define Pnt_hxx <gp_Pnt2d.hxx>
|
||||
#define Extrema_CurveLocator Geom2dInt_TheCurveLocatorOfTheProjPCurOfGInter
|
||||
#define Extrema_CurveLocator_hxx <Geom2dInt_TheCurveLocatorOfTheProjPCurOfGInter.hxx>
|
||||
#include <Extrema_CurveLocator.gxx>
|
||||
|
@@ -0,0 +1,79 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#ifndef _Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter_HeaderFile
|
||||
#define _Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter_HeaderFile
|
||||
|
||||
#include <Standard.hxx>
|
||||
#include <Standard_DefineAlloc.hxx>
|
||||
#include <Standard_Handle.hxx>
|
||||
|
||||
#include <Standard_Address.hxx>
|
||||
#include <math_FunctionSetWithDerivatives.hxx>
|
||||
#include <Standard_Integer.hxx>
|
||||
#include <Standard_Boolean.hxx>
|
||||
#include <math_Vector.hxx>
|
||||
class Adaptor2d_Curve2d;
|
||||
class Geom2dInt_Geom2dCurveTool;
|
||||
class math_Matrix;
|
||||
|
||||
|
||||
|
||||
class Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter : public math_FunctionSetWithDerivatives
|
||||
{
|
||||
public:
|
||||
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
|
||||
Standard_EXPORT Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter(const Adaptor2d_Curve2d& curve1, const Adaptor2d_Curve2d& curve2);
|
||||
|
||||
Standard_EXPORT Standard_Integer NbVariables() const;
|
||||
|
||||
Standard_EXPORT Standard_Integer NbEquations() const;
|
||||
|
||||
Standard_EXPORT Standard_Boolean Value (const math_Vector& X, math_Vector& F);
|
||||
|
||||
Standard_EXPORT Standard_Boolean Derivatives (const math_Vector& X, math_Matrix& D);
|
||||
|
||||
Standard_EXPORT Standard_Boolean Values (const math_Vector& X, math_Vector& F, math_Matrix& D);
|
||||
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
private:
|
||||
|
||||
|
||||
|
||||
Standard_Address thecurve1;
|
||||
Standard_Address thecurve2;
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#endif // _Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter_HeaderFile
|
@@ -0,0 +1,31 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#include <Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
|
||||
#include <Adaptor2d_Curve2d.hxx>
|
||||
#include <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#include <math_Matrix.hxx>
|
||||
|
||||
|
||||
#define TheCurve Adaptor2d_Curve2d
|
||||
#define TheCurve_hxx <Adaptor2d_Curve2d.hxx>
|
||||
#define TheCurveTool Geom2dInt_Geom2dCurveTool
|
||||
#define TheCurveTool_hxx <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#define IntCurve_DistBetweenPCurvesGen Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_DistBetweenPCurvesGen_hxx <Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#include <IntCurve_DistBetweenPCurvesGen.gxx>
|
||||
|
128
src/Geom2dInt/Geom2dInt_TheIntConicCurveOfGInter.hxx
Normal file
128
src/Geom2dInt/Geom2dInt_TheIntConicCurveOfGInter.hxx
Normal file
@@ -0,0 +1,128 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#ifndef _Geom2dInt_TheIntConicCurveOfGInter_HeaderFile
|
||||
#define _Geom2dInt_TheIntConicCurveOfGInter_HeaderFile
|
||||
|
||||
#include <Standard.hxx>
|
||||
#include <Standard_DefineAlloc.hxx>
|
||||
#include <Standard_Handle.hxx>
|
||||
|
||||
#include <IntRes2d_Intersection.hxx>
|
||||
#include <Standard_Real.hxx>
|
||||
class IntCurve_IConicTool;
|
||||
class Adaptor2d_Curve2d;
|
||||
class Geom2dInt_Geom2dCurveTool;
|
||||
class Geom2dInt_TheProjPCurOfGInter;
|
||||
class Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter;
|
||||
class Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter;
|
||||
class gp_Lin2d;
|
||||
class IntRes2d_Domain;
|
||||
class gp_Circ2d;
|
||||
class gp_Elips2d;
|
||||
class gp_Parab2d;
|
||||
class gp_Hypr2d;
|
||||
|
||||
|
||||
|
||||
class Geom2dInt_TheIntConicCurveOfGInter : public IntRes2d_Intersection
|
||||
{
|
||||
public:
|
||||
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
|
||||
Geom2dInt_TheIntConicCurveOfGInter();
|
||||
|
||||
Geom2dInt_TheIntConicCurveOfGInter(const gp_Lin2d& L, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT Geom2dInt_TheIntConicCurveOfGInter(const gp_Circ2d& C, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT Geom2dInt_TheIntConicCurveOfGInter(const gp_Elips2d& E, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT Geom2dInt_TheIntConicCurveOfGInter(const gp_Parab2d& Prb, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT Geom2dInt_TheIntConicCurveOfGInter(const gp_Hypr2d& H, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
void Perform (const gp_Lin2d& L, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
void Perform (const gp_Circ2d& C, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
void Perform (const gp_Elips2d& E, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
void Perform (const gp_Parab2d& Prb, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
void Perform (const gp_Hypr2d& H, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
private:
|
||||
|
||||
|
||||
void Perform (const IntCurve_IConicTool& ICurve, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
|
||||
|
||||
|
||||
};
|
||||
|
||||
#define TheImpTool IntCurve_IConicTool
|
||||
#define TheImpTool_hxx <IntCurve_IConicTool.hxx>
|
||||
#define ThePCurve Adaptor2d_Curve2d
|
||||
#define ThePCurve_hxx <Adaptor2d_Curve2d.hxx>
|
||||
#define ThePCurveTool Geom2dInt_Geom2dCurveTool
|
||||
#define ThePCurveTool_hxx <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#define TheProjPCur Geom2dInt_TheProjPCurOfGInter
|
||||
#define TheProjPCur_hxx <Geom2dInt_TheProjPCurOfGInter.hxx>
|
||||
#define IntCurve_TheIntersector Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter
|
||||
#define IntCurve_TheIntersector_hxx <Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter.hxx>
|
||||
#define IntCurve_MyImpParToolOfTheIntersector Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter
|
||||
#define IntCurve_MyImpParToolOfTheIntersector_hxx <Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter.hxx>
|
||||
#define IntCurve_MyImpParToolOfTheIntersector Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter
|
||||
#define IntCurve_MyImpParToolOfTheIntersector_hxx <Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter.hxx>
|
||||
#define IntCurve_IntConicCurveGen Geom2dInt_TheIntConicCurveOfGInter
|
||||
#define IntCurve_IntConicCurveGen_hxx <Geom2dInt_TheIntConicCurveOfGInter.hxx>
|
||||
|
||||
#include <IntCurve_IntConicCurveGen.lxx>
|
||||
|
||||
#undef TheImpTool
|
||||
#undef TheImpTool_hxx
|
||||
#undef ThePCurve
|
||||
#undef ThePCurve_hxx
|
||||
#undef ThePCurveTool
|
||||
#undef ThePCurveTool_hxx
|
||||
#undef TheProjPCur
|
||||
#undef TheProjPCur_hxx
|
||||
#undef IntCurve_TheIntersector
|
||||
#undef IntCurve_TheIntersector_hxx
|
||||
#undef IntCurve_MyImpParToolOfTheIntersector
|
||||
#undef IntCurve_MyImpParToolOfTheIntersector_hxx
|
||||
#undef IntCurve_MyImpParToolOfTheIntersector
|
||||
#undef IntCurve_MyImpParToolOfTheIntersector_hxx
|
||||
#undef IntCurve_IntConicCurveGen
|
||||
#undef IntCurve_IntConicCurveGen_hxx
|
||||
|
||||
|
||||
|
||||
|
||||
#endif // _Geom2dInt_TheIntConicCurveOfGInter_HeaderFile
|
50
src/Geom2dInt/Geom2dInt_TheIntConicCurveOfGInter_0.cxx
Normal file
50
src/Geom2dInt/Geom2dInt_TheIntConicCurveOfGInter_0.cxx
Normal file
@@ -0,0 +1,50 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#include <Geom2dInt_TheIntConicCurveOfGInter.hxx>
|
||||
|
||||
#include <IntCurve_IConicTool.hxx>
|
||||
#include <Adaptor2d_Curve2d.hxx>
|
||||
#include <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#include <Geom2dInt_TheProjPCurOfGInter.hxx>
|
||||
#include <Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter.hxx>
|
||||
#include <Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter.hxx>
|
||||
#include <gp_Lin2d.hxx>
|
||||
#include <IntRes2d_Domain.hxx>
|
||||
#include <gp_Circ2d.hxx>
|
||||
#include <gp_Elips2d.hxx>
|
||||
#include <gp_Parab2d.hxx>
|
||||
#include <gp_Hypr2d.hxx>
|
||||
|
||||
|
||||
#define TheImpTool IntCurve_IConicTool
|
||||
#define TheImpTool_hxx <IntCurve_IConicTool.hxx>
|
||||
#define ThePCurve Adaptor2d_Curve2d
|
||||
#define ThePCurve_hxx <Adaptor2d_Curve2d.hxx>
|
||||
#define ThePCurveTool Geom2dInt_Geom2dCurveTool
|
||||
#define ThePCurveTool_hxx <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#define TheProjPCur Geom2dInt_TheProjPCurOfGInter
|
||||
#define TheProjPCur_hxx <Geom2dInt_TheProjPCurOfGInter.hxx>
|
||||
#define IntCurve_TheIntersector Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter
|
||||
#define IntCurve_TheIntersector_hxx <Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter.hxx>
|
||||
#define IntCurve_MyImpParToolOfTheIntersector Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter
|
||||
#define IntCurve_MyImpParToolOfTheIntersector_hxx <Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter.hxx>
|
||||
#define IntCurve_MyImpParToolOfTheIntersector Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter
|
||||
#define IntCurve_MyImpParToolOfTheIntersector_hxx <Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter.hxx>
|
||||
#define IntCurve_IntConicCurveGen Geom2dInt_TheIntConicCurveOfGInter
|
||||
#define IntCurve_IntConicCurveGen_hxx <Geom2dInt_TheIntConicCurveOfGInter.hxx>
|
||||
#include <IntCurve_IntConicCurveGen.gxx>
|
||||
|
83
src/Geom2dInt/Geom2dInt_TheIntPCurvePCurveOfGInter.hxx
Normal file
83
src/Geom2dInt/Geom2dInt_TheIntPCurvePCurveOfGInter.hxx
Normal file
@@ -0,0 +1,83 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#ifndef _Geom2dInt_TheIntPCurvePCurveOfGInter_HeaderFile
|
||||
#define _Geom2dInt_TheIntPCurvePCurveOfGInter_HeaderFile
|
||||
|
||||
#include <Standard.hxx>
|
||||
#include <Standard_DefineAlloc.hxx>
|
||||
#include <Standard_Handle.hxx>
|
||||
|
||||
#include <IntRes2d_Domain.hxx>
|
||||
#include <IntRes2d_Intersection.hxx>
|
||||
#include <Standard_Real.hxx>
|
||||
#include <Standard_Integer.hxx>
|
||||
#include <Standard_Boolean.hxx>
|
||||
class Adaptor2d_Curve2d;
|
||||
class Geom2dInt_Geom2dCurveTool;
|
||||
class Geom2dInt_TheProjPCurOfGInter;
|
||||
class Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter;
|
||||
class Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter;
|
||||
class Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter;
|
||||
class IntRes2d_Domain;
|
||||
|
||||
|
||||
|
||||
class Geom2dInt_TheIntPCurvePCurveOfGInter : public IntRes2d_Intersection
|
||||
{
|
||||
public:
|
||||
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
|
||||
Standard_EXPORT Geom2dInt_TheIntPCurvePCurveOfGInter();
|
||||
|
||||
Standard_EXPORT void Perform (const Adaptor2d_Curve2d& Curve1, const IntRes2d_Domain& Domain1, const Adaptor2d_Curve2d& Curve2, const IntRes2d_Domain& Domain2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT void Perform (const Adaptor2d_Curve2d& Curve1, const IntRes2d_Domain& Domain1, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
|
||||
|
||||
Standard_EXPORT void Perform (const Adaptor2d_Curve2d& Curve1, const IntRes2d_Domain& Domain1, const Adaptor2d_Curve2d& Curve2, const IntRes2d_Domain& Domain2, const Standard_Real TolConf, const Standard_Real Tol, const Standard_Integer NbIter, const Standard_Real DeltaU, const Standard_Real DeltaV);
|
||||
|
||||
Standard_EXPORT void Perform (const Adaptor2d_Curve2d& Curve1, const IntRes2d_Domain& Domain1, const Standard_Real TolConf, const Standard_Real Tol, const Standard_Integer NbIter, const Standard_Real DeltaU, const Standard_Real DeltaV);
|
||||
|
||||
|
||||
|
||||
|
||||
private:
|
||||
|
||||
|
||||
Standard_EXPORT Standard_Boolean findIntersect (const Adaptor2d_Curve2d& Curve1, const IntRes2d_Domain& Domain1, const Adaptor2d_Curve2d& Curve2, const IntRes2d_Domain& Domain2, const Standard_Real TolConf, const Standard_Real Tol, const Standard_Integer NbIter, const Standard_Real DeltaU, const Standard_Real DeltaV, const Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter& thePoly1, const Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter& thePoly2, const Standard_Boolean isFullRepresentation);
|
||||
|
||||
|
||||
IntRes2d_Domain DomainOnCurve1;
|
||||
IntRes2d_Domain DomainOnCurve2;
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#endif // _Geom2dInt_TheIntPCurvePCurveOfGInter_HeaderFile
|
43
src/Geom2dInt/Geom2dInt_TheIntPCurvePCurveOfGInter_0.cxx
Normal file
43
src/Geom2dInt/Geom2dInt_TheIntPCurvePCurveOfGInter_0.cxx
Normal file
@@ -0,0 +1,43 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#include <Geom2dInt_TheIntPCurvePCurveOfGInter.hxx>
|
||||
|
||||
#include <Adaptor2d_Curve2d.hxx>
|
||||
#include <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#include <Geom2dInt_TheProjPCurOfGInter.hxx>
|
||||
#include <Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#include <Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#include <Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#include <IntRes2d_Domain.hxx>
|
||||
|
||||
|
||||
#define TheCurve Adaptor2d_Curve2d
|
||||
#define TheCurve_hxx <Adaptor2d_Curve2d.hxx>
|
||||
#define TheCurveTool Geom2dInt_Geom2dCurveTool
|
||||
#define TheCurveTool_hxx <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#define TheProjPCur Geom2dInt_TheProjPCurOfGInter
|
||||
#define TheProjPCur_hxx <Geom2dInt_TheProjPCurOfGInter.hxx>
|
||||
#define IntCurve_ThePolygon2d Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_ThePolygon2d_hxx <Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#define IntCurve_TheDistBetweenPCurves Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_TheDistBetweenPCurves_hxx <Geom2dInt_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#define IntCurve_ExactIntersectionPoint Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_ExactIntersectionPoint_hxx <Geom2dInt_ExactIntersectionPointOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#define IntCurve_IntPolyPolyGen Geom2dInt_TheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_IntPolyPolyGen_hxx <Geom2dInt_TheIntPCurvePCurveOfGInter.hxx>
|
||||
#include <IntCurve_IntPolyPolyGen.gxx>
|
||||
|
@@ -0,0 +1,81 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#ifndef _Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter_HeaderFile
|
||||
#define _Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter_HeaderFile
|
||||
|
||||
#include <Standard.hxx>
|
||||
#include <Standard_DefineAlloc.hxx>
|
||||
#include <Standard_Handle.hxx>
|
||||
|
||||
#include <IntRes2d_Intersection.hxx>
|
||||
#include <Standard_Real.hxx>
|
||||
#include <Standard_Integer.hxx>
|
||||
#include <TColStd_Array1OfReal.hxx>
|
||||
class Standard_ConstructionError;
|
||||
class IntCurve_IConicTool;
|
||||
class Adaptor2d_Curve2d;
|
||||
class Geom2dInt_Geom2dCurveTool;
|
||||
class Geom2dInt_TheProjPCurOfGInter;
|
||||
class Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter;
|
||||
class IntRes2d_Domain;
|
||||
class gp_Pnt2d;
|
||||
|
||||
|
||||
|
||||
class Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter : public IntRes2d_Intersection
|
||||
{
|
||||
public:
|
||||
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
|
||||
Standard_EXPORT Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter();
|
||||
|
||||
Standard_EXPORT Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter(const IntCurve_IConicTool& ITool, const IntRes2d_Domain& Dom1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& Dom2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT void Perform (const IntCurve_IConicTool& ITool, const IntRes2d_Domain& Dom1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& Dom2, const Standard_Real TolConf, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT Standard_Real FindU (const Standard_Real parameter, gp_Pnt2d& point, const Adaptor2d_Curve2d& TheParCurev, const IntCurve_IConicTool& TheImpTool) const;
|
||||
|
||||
Standard_EXPORT Standard_Real FindV (const Standard_Real parameter, gp_Pnt2d& point, const IntCurve_IConicTool& TheImpTool, const Adaptor2d_Curve2d& ParCurve, const IntRes2d_Domain& TheParCurveDomain, const Standard_Real V0, const Standard_Real V1, const Standard_Real Tolerance) const;
|
||||
|
||||
Standard_EXPORT void And_Domaine_Objet1_Intersections (const IntCurve_IConicTool& TheImpTool, const Adaptor2d_Curve2d& TheParCurve, const IntRes2d_Domain& TheImpCurveDomain, const IntRes2d_Domain& TheParCurveDomain, Standard_Integer& NbResultats, TColStd_Array1OfReal& Inter2_And_Domain2, TColStd_Array1OfReal& Inter1, TColStd_Array1OfReal& Resultat1, TColStd_Array1OfReal& Resultat2, const Standard_Real EpsNul) const;
|
||||
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
private:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#endif // _Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter_HeaderFile
|
@@ -0,0 +1,42 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#include <Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter.hxx>
|
||||
|
||||
#include <Standard_ConstructionError.hxx>
|
||||
#include <IntCurve_IConicTool.hxx>
|
||||
#include <Adaptor2d_Curve2d.hxx>
|
||||
#include <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#include <Geom2dInt_TheProjPCurOfGInter.hxx>
|
||||
#include <Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter.hxx>
|
||||
#include <IntRes2d_Domain.hxx>
|
||||
#include <gp_Pnt2d.hxx>
|
||||
|
||||
|
||||
#define ImpTool IntCurve_IConicTool
|
||||
#define ImpTool_hxx <IntCurve_IConicTool.hxx>
|
||||
#define ParCurve Adaptor2d_Curve2d
|
||||
#define ParCurve_hxx <Adaptor2d_Curve2d.hxx>
|
||||
#define ParTool Geom2dInt_Geom2dCurveTool
|
||||
#define ParTool_hxx <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#define ProjectOnPCurveTool Geom2dInt_TheProjPCurOfGInter
|
||||
#define ProjectOnPCurveTool_hxx <Geom2dInt_TheProjPCurOfGInter.hxx>
|
||||
#define IntImpParGen_MyImpParTool Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter
|
||||
#define IntImpParGen_MyImpParTool_hxx <Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter.hxx>
|
||||
#define IntImpParGen_Intersector Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter
|
||||
#define IntImpParGen_Intersector_hxx <Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter.hxx>
|
||||
#include <IntImpParGen_Intersector.gxx>
|
||||
|
@@ -0,0 +1,93 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#ifndef _Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter_HeaderFile
|
||||
#define _Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter_HeaderFile
|
||||
|
||||
#include <Standard.hxx>
|
||||
#include <Standard_DefineAlloc.hxx>
|
||||
#include <Standard_Handle.hxx>
|
||||
|
||||
#include <Standard_Boolean.hxx>
|
||||
#include <Standard_Real.hxx>
|
||||
#include <Geom2dInt_PCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
class Standard_DomainError;
|
||||
class Standard_TypeMismatch;
|
||||
class StdFail_NotDone;
|
||||
class Adaptor2d_Curve2d;
|
||||
class Geom2dInt_Geom2dCurveTool;
|
||||
class Extrema_POnCurv2d;
|
||||
class gp_Pnt2d;
|
||||
class gp_Vec2d;
|
||||
class Geom2dInt_PCLocFOfTheLocateExtPCOfTheProjPCurOfGInter;
|
||||
class Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter;
|
||||
|
||||
|
||||
|
||||
class Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter
|
||||
{
|
||||
public:
|
||||
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
|
||||
Standard_EXPORT Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter();
|
||||
|
||||
Standard_EXPORT Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter(const gp_Pnt2d& P, const Adaptor2d_Curve2d& C, const Standard_Real U0, const Standard_Real TolU);
|
||||
|
||||
Standard_EXPORT Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter(const gp_Pnt2d& P, const Adaptor2d_Curve2d& C, const Standard_Real U0, const Standard_Real Umin, const Standard_Real Usup, const Standard_Real TolU);
|
||||
|
||||
Standard_EXPORT void Initialize (const Adaptor2d_Curve2d& C, const Standard_Real Umin, const Standard_Real Usup, const Standard_Real TolU);
|
||||
|
||||
Standard_EXPORT void Perform (const gp_Pnt2d& P, const Standard_Real U0);
|
||||
|
||||
Standard_EXPORT Standard_Boolean IsDone() const;
|
||||
|
||||
Standard_EXPORT Standard_Real SquareDistance() const;
|
||||
|
||||
Standard_EXPORT Standard_Boolean IsMin() const;
|
||||
|
||||
Standard_EXPORT const Extrema_POnCurv2d& Point() const;
|
||||
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
private:
|
||||
|
||||
|
||||
|
||||
Standard_Boolean myDone;
|
||||
Standard_Real mytolU;
|
||||
Standard_Real myumin;
|
||||
Standard_Real myusup;
|
||||
Geom2dInt_PCLocFOfTheLocateExtPCOfTheProjPCurOfGInter myF;
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#endif // _Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter_HeaderFile
|
@@ -0,0 +1,50 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#include <Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
|
||||
#include <Standard_DomainError.hxx>
|
||||
#include <Standard_TypeMismatch.hxx>
|
||||
#include <StdFail_NotDone.hxx>
|
||||
#include <Adaptor2d_Curve2d.hxx>
|
||||
#include <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#include <Extrema_POnCurv2d.hxx>
|
||||
#include <gp_Pnt2d.hxx>
|
||||
#include <gp_Vec2d.hxx>
|
||||
#include <Geom2dInt_PCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#include <Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
|
||||
|
||||
#define Curve Adaptor2d_Curve2d
|
||||
#define Curve_hxx <Adaptor2d_Curve2d.hxx>
|
||||
#define Tool Geom2dInt_Geom2dCurveTool
|
||||
#define Tool_hxx <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#define POnC Extrema_POnCurv2d
|
||||
#define POnC_hxx <Extrema_POnCurv2d.hxx>
|
||||
#define Pnt gp_Pnt2d
|
||||
#define Pnt_hxx <gp_Pnt2d.hxx>
|
||||
#define Vec gp_Vec2d
|
||||
#define Vec_hxx <gp_Vec2d.hxx>
|
||||
#define Extrema_PCLocF Geom2dInt_PCLocFOfTheLocateExtPCOfTheProjPCurOfGInter
|
||||
#define Extrema_PCLocF_hxx <Geom2dInt_PCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#define Extrema_SeqPCOfPCLocF Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter
|
||||
#define Extrema_SeqPCOfPCLocF_hxx <Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#define Extrema_SeqPCOfPCLocF Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter
|
||||
#define Extrema_SeqPCOfPCLocF_hxx <Geom2dInt_SeqPCOfPCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#define Extrema_GenLocateExtPC Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter
|
||||
#define Extrema_GenLocateExtPC_hxx <Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#include <Extrema_GenLocateExtPC.gxx>
|
||||
|
@@ -0,0 +1,118 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#ifndef _Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter_HeaderFile
|
||||
#define _Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter_HeaderFile
|
||||
|
||||
#include <Standard.hxx>
|
||||
#include <Standard_DefineAlloc.hxx>
|
||||
#include <Standard_Handle.hxx>
|
||||
|
||||
#include <Standard_Real.hxx>
|
||||
#include <Standard_Integer.hxx>
|
||||
#include <TColgp_Array1OfPnt2d.hxx>
|
||||
#include <TColStd_Array1OfReal.hxx>
|
||||
#include <TColStd_Array1OfInteger.hxx>
|
||||
#include <Standard_Boolean.hxx>
|
||||
#include <Intf_Polygon2d.hxx>
|
||||
class Standard_OutOfRange;
|
||||
class Adaptor2d_Curve2d;
|
||||
class Geom2dInt_Geom2dCurveTool;
|
||||
class IntRes2d_Domain;
|
||||
class Bnd_Box2d;
|
||||
class gp_Pnt2d;
|
||||
|
||||
|
||||
|
||||
class Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter : public Intf_Polygon2d
|
||||
{
|
||||
public:
|
||||
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
|
||||
Standard_EXPORT Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter(const Adaptor2d_Curve2d& Curve, const Standard_Integer NbPnt, const IntRes2d_Domain& Domain, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT void ComputeWithBox (const Adaptor2d_Curve2d& Curve, const Bnd_Box2d& OtherBox);
|
||||
|
||||
virtual Standard_Real DeflectionOverEstimation() const Standard_OVERRIDE;
|
||||
|
||||
void SetDeflectionOverEstimation (const Standard_Real x);
|
||||
|
||||
void Closed (const Standard_Boolean clos);
|
||||
|
||||
virtual Standard_Integer NbSegments() const Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void Segment (const Standard_Integer theIndex, gp_Pnt2d& theBegin, gp_Pnt2d& theEnd) const Standard_OVERRIDE;
|
||||
|
||||
Standard_Real InfParameter() const;
|
||||
|
||||
Standard_Real SupParameter() const;
|
||||
|
||||
Standard_EXPORT Standard_Boolean AutoIntersectionIsPossible() const;
|
||||
|
||||
Standard_EXPORT Standard_Real ApproxParamOnCurve (const Standard_Integer Index, const Standard_Real ParamOnLine) const;
|
||||
|
||||
Standard_Integer CalculRegion (const Standard_Real x, const Standard_Real y, const Standard_Real x1, const Standard_Real x2, const Standard_Real y1, const Standard_Real y2) const;
|
||||
|
||||
Standard_EXPORT void Dump() const;
|
||||
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
private:
|
||||
|
||||
|
||||
|
||||
Standard_Real TheDeflection;
|
||||
Standard_Integer NbPntIn;
|
||||
Standard_Integer TheMaxNbPoints;
|
||||
TColgp_Array1OfPnt2d ThePnts;
|
||||
TColStd_Array1OfReal TheParams;
|
||||
TColStd_Array1OfInteger TheIndex;
|
||||
Standard_Boolean ClosedPolygon;
|
||||
Standard_Real Binf;
|
||||
Standard_Real Bsup;
|
||||
|
||||
|
||||
};
|
||||
|
||||
#define TheCurve Adaptor2d_Curve2d
|
||||
#define TheCurve_hxx <Adaptor2d_Curve2d.hxx>
|
||||
#define TheCurveTool Geom2dInt_Geom2dCurveTool
|
||||
#define TheCurveTool_hxx <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#define IntCurve_Polygon2dGen Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_Polygon2dGen_hxx <Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
|
||||
#include <IntCurve_Polygon2dGen.lxx>
|
||||
|
||||
#undef TheCurve
|
||||
#undef TheCurve_hxx
|
||||
#undef TheCurveTool
|
||||
#undef TheCurveTool_hxx
|
||||
#undef IntCurve_Polygon2dGen
|
||||
#undef IntCurve_Polygon2dGen_hxx
|
||||
|
||||
|
||||
|
||||
|
||||
#endif // _Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter_HeaderFile
|
@@ -0,0 +1,34 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#include <Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
|
||||
#include <Standard_OutOfRange.hxx>
|
||||
#include <Adaptor2d_Curve2d.hxx>
|
||||
#include <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#include <IntRes2d_Domain.hxx>
|
||||
#include <Bnd_Box2d.hxx>
|
||||
#include <gp_Pnt2d.hxx>
|
||||
|
||||
|
||||
#define TheCurve Adaptor2d_Curve2d
|
||||
#define TheCurve_hxx <Adaptor2d_Curve2d.hxx>
|
||||
#define TheCurveTool Geom2dInt_Geom2dCurveTool
|
||||
#define TheCurveTool_hxx <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#define IntCurve_Polygon2dGen Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter
|
||||
#define IntCurve_Polygon2dGen_hxx <Geom2dInt_ThePolygon2dOfTheIntPCurvePCurveOfGInter.hxx>
|
||||
#include <IntCurve_Polygon2dGen.gxx>
|
||||
|
68
src/Geom2dInt/Geom2dInt_TheProjPCurOfGInter.hxx
Normal file
68
src/Geom2dInt/Geom2dInt_TheProjPCurOfGInter.hxx
Normal file
@@ -0,0 +1,68 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#ifndef _Geom2dInt_TheProjPCurOfGInter_HeaderFile
|
||||
#define _Geom2dInt_TheProjPCurOfGInter_HeaderFile
|
||||
|
||||
#include <Standard.hxx>
|
||||
#include <Standard_DefineAlloc.hxx>
|
||||
#include <Standard_Handle.hxx>
|
||||
|
||||
#include <Standard_Real.hxx>
|
||||
class Adaptor2d_Curve2d;
|
||||
class Geom2dInt_Geom2dCurveTool;
|
||||
class Geom2dInt_TheCurveLocatorOfTheProjPCurOfGInter;
|
||||
class Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter;
|
||||
class Geom2dInt_PCLocFOfTheLocateExtPCOfTheProjPCurOfGInter;
|
||||
class gp_Pnt2d;
|
||||
|
||||
|
||||
|
||||
class Geom2dInt_TheProjPCurOfGInter
|
||||
{
|
||||
public:
|
||||
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
|
||||
Standard_EXPORT static Standard_Real FindParameter (const Adaptor2d_Curve2d& C, const gp_Pnt2d& Pnt, const Standard_Real Tol);
|
||||
|
||||
Standard_EXPORT static Standard_Real FindParameter (const Adaptor2d_Curve2d& C, const gp_Pnt2d& Pnt, const Standard_Real LowParameter, const Standard_Real HighParameter, const Standard_Real Tol);
|
||||
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
private:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#endif // _Geom2dInt_TheProjPCurOfGInter_HeaderFile
|
42
src/Geom2dInt/Geom2dInt_TheProjPCurOfGInter_0.cxx
Normal file
42
src/Geom2dInt/Geom2dInt_TheProjPCurOfGInter_0.cxx
Normal file
@@ -0,0 +1,42 @@
|
||||
// Created on: 1992-06-04
|
||||
// Created by: Jacques GOUSSARD
|
||||
// Copyright (c) 1992-1999 Matra Datavision
|
||||
// Copyright (c) 1999-2014 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#include <Geom2dInt_TheProjPCurOfGInter.hxx>
|
||||
|
||||
#include <Adaptor2d_Curve2d.hxx>
|
||||
#include <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#include <Geom2dInt_TheCurveLocatorOfTheProjPCurOfGInter.hxx>
|
||||
#include <Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#include <Geom2dInt_PCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#include <gp_Pnt2d.hxx>
|
||||
|
||||
|
||||
#define TheCurve Adaptor2d_Curve2d
|
||||
#define TheCurve_hxx <Adaptor2d_Curve2d.hxx>
|
||||
#define TheCurveTool Geom2dInt_Geom2dCurveTool
|
||||
#define TheCurveTool_hxx <Geom2dInt_Geom2dCurveTool.hxx>
|
||||
#define IntCurve_TheCurveLocator Geom2dInt_TheCurveLocatorOfTheProjPCurOfGInter
|
||||
#define IntCurve_TheCurveLocator_hxx <Geom2dInt_TheCurveLocatorOfTheProjPCurOfGInter.hxx>
|
||||
#define IntCurve_TheLocateExtPC Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter
|
||||
#define IntCurve_TheLocateExtPC_hxx <Geom2dInt_TheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#define IntCurve_PCLocFOfTheLocateExtPC Geom2dInt_PCLocFOfTheLocateExtPCOfTheProjPCurOfGInter
|
||||
#define IntCurve_PCLocFOfTheLocateExtPC_hxx <Geom2dInt_PCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#define IntCurve_PCLocFOfTheLocateExtPC Geom2dInt_PCLocFOfTheLocateExtPCOfTheProjPCurOfGInter
|
||||
#define IntCurve_PCLocFOfTheLocateExtPC_hxx <Geom2dInt_PCLocFOfTheLocateExtPCOfTheProjPCurOfGInter.hxx>
|
||||
#define IntCurve_ProjPCurGen Geom2dInt_TheProjPCurOfGInter
|
||||
#define IntCurve_ProjPCurGen_hxx <Geom2dInt_TheProjPCurOfGInter.hxx>
|
||||
#include <IntCurve_ProjPCurGen.gxx>
|
||||
|
Reference in New Issue
Block a user