Warning, /include/opencascade/ApproxInt_MultiLineTool.lxx is written in an unsupported language. File is not indexed.
0001 // Created on: 1993-03-30
0002 // Created by: Laurent BUCHARD
0003 // Copyright (c) 1993-1999 Matra Datavision
0004 // Copyright (c) 1999-2014 OPEN CASCADE SAS
0005 //
0006 // This file is part of Open CASCADE Technology software library.
0007 //
0008 // This library is free software; you can redistribute it and/or modify it under
0009 // the terms of the GNU Lesser General Public License version 2.1 as published
0010 // by the Free Software Foundation, with special exception defined in the file
0011 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
0012 // distribution for complete text of the license and disclaimer of any warranty.
0013 //
0014 // Alternatively, this file may be used under the terms of Open CASCADE
0015 // commercial license or contractual agreement.
0016
0017 #include TheMultiLine_hxx
0018
0019 #include <TColgp_Array1OfPnt.hxx>
0020 #include <TColgp_Array1OfPnt2d.hxx>
0021 #include <TColgp_Array1OfVec.hxx>
0022 #include <TColgp_Array1OfVec2d.hxx>
0023
0024 #include <Approx_Status.hxx>
0025
0026 //================================================================================
0027 inline Standard_Integer ApproxInt_MultiLineTool::NbP2d(const TheMultiLine& ML) {
0028 return(ML.NbP2d());
0029 }
0030 //--------------------------------------------------------------------------------
0031 inline Standard_Integer ApproxInt_MultiLineTool::NbP3d(const TheMultiLine& ML) {
0032 return(ML.NbP3d());
0033 }
0034 //--------------------------------------------------------------------------------
0035 inline Standard_Integer ApproxInt_MultiLineTool::FirstPoint(const TheMultiLine& ML) {
0036 return(ML.FirstPoint());
0037 }
0038 //--------------------------------------------------------------------------------
0039 inline Standard_Integer ApproxInt_MultiLineTool::LastPoint(const TheMultiLine& ML) {
0040 return(ML.LastPoint());
0041 }
0042 //--------------------------------------------------------------------------------
0043 inline void ApproxInt_MultiLineTool::Value( const TheMultiLine& ML
0044 ,const Standard_Integer Index
0045 ,TColgp_Array1OfPnt& TabPnt) {
0046 ML.Value(Index,TabPnt);
0047 }
0048 //--------------------------------------------------------------------------------
0049 inline void ApproxInt_MultiLineTool::Value( const TheMultiLine& ML
0050 ,const Standard_Integer Index
0051 ,TColgp_Array1OfPnt2d& TabPnt2d) {
0052 ML.Value(Index,TabPnt2d);
0053 }
0054 //--------------------------------------------------------------------------------
0055 inline void ApproxInt_MultiLineTool::Value( const TheMultiLine& ML
0056 ,const Standard_Integer Index
0057 ,TColgp_Array1OfPnt& TabPnt
0058 ,TColgp_Array1OfPnt2d& TabPnt2d) {
0059 ML.Value(Index,TabPnt,TabPnt2d);
0060 }
0061 //--------------------------------------------------------------------------------
0062 inline Standard_Boolean ApproxInt_MultiLineTool::Tangency( const TheMultiLine& ML
0063 ,const Standard_Integer Index
0064 ,TColgp_Array1OfVec& TabVec) {
0065 return(ML.Tangency(Index,TabVec));
0066 }
0067 //--------------------------------------------------------------------------------
0068 inline Standard_Boolean ApproxInt_MultiLineTool::Tangency( const TheMultiLine& ML
0069 ,const Standard_Integer Index
0070 ,TColgp_Array1OfVec2d& TabVec2d) {
0071 return(ML.Tangency(Index,TabVec2d));
0072 }
0073 //--------------------------------------------------------------------------------
0074 inline Standard_Boolean ApproxInt_MultiLineTool::Tangency( const TheMultiLine& ML
0075 ,const Standard_Integer Index
0076 ,TColgp_Array1OfVec& TabVec
0077 ,TColgp_Array1OfVec2d& TabVec2d) {
0078 return(ML.Tangency(Index,TabVec,TabVec2d));
0079 }
0080
0081 //--------------------------------------------------------------------------------
0082 inline Standard_Boolean ApproxInt_MultiLineTool::Curvature( const TheMultiLine& //ML
0083 ,const Standard_Integer //Index
0084 ,TColgp_Array1OfVec& ) { //TabVec
0085 return Standard_False;
0086 }
0087 //--------------------------------------------------------------------------------
0088 inline Standard_Boolean ApproxInt_MultiLineTool::Curvature( const TheMultiLine& //ML
0089 ,const Standard_Integer //Index
0090 ,TColgp_Array1OfVec2d& ) { //TabVec2d
0091 return Standard_False;
0092 }
0093 //--------------------------------------------------------------------------------
0094 inline Standard_Boolean ApproxInt_MultiLineTool::Curvature( const TheMultiLine& //ML
0095 ,const Standard_Integer //Index
0096 ,TColgp_Array1OfVec& //TabVec
0097 ,TColgp_Array1OfVec2d& ) { //TabVec2d
0098 return Standard_False;
0099 }
0100 //--------------------------------------------------------------------------------
0101 inline Approx_Status ApproxInt_MultiLineTool::WhatStatus(const TheMultiLine& ML
0102 ,const Standard_Integer
0103 ,const Standard_Integer) {
0104 //-- PointsAdded,
0105 //-- NoPointsAdded,
0106 //-- NoApproximation
0107 //-- Approx_PointsAdded
0108 return(ML.WhatStatus());
0109 }
0110 //--------------------------------------------------------------------------------
0111 inline TheMultiLine ApproxInt_MultiLineTool::MakeMLBetween(const TheMultiLine& ML,
0112 const Standard_Integer I1,
0113 const Standard_Integer I2,
0114 const Standard_Integer NbPMin) {
0115
0116 return(ML.MakeMLBetween(I1,I2,NbPMin));
0117 }
0118 //--------------------------------------------------------------------------------
0119 inline Standard_Boolean ApproxInt_MultiLineTool::MakeMLOneMorePoint(const TheMultiLine& ML,
0120 const Standard_Integer I1,
0121 const Standard_Integer I2,
0122 const Standard_Integer indbad,
0123 TheMultiLine& OtherLine)
0124 {
0125 return (ML.MakeMLOneMorePoint(I1,I2,indbad,OtherLine));
0126 }
0127
0128 inline void ApproxInt_MultiLineTool::Dump(const TheMultiLine& ML)
0129 {
0130 ML.Dump();
0131 }
0132 //================================================================================