mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-09 13:22:24 +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:
@@ -1 +1,8 @@
|
||||
Intrv_Interval.cxx
|
||||
Intrv_Interval.hxx
|
||||
Intrv_Interval.lxx
|
||||
Intrv_Intervals.cxx
|
||||
Intrv_Intervals.hxx
|
||||
Intrv_Intervals.lxx
|
||||
Intrv_Position.hxx
|
||||
Intrv_SequenceOfInterval.hxx
|
||||
|
@@ -1,46 +0,0 @@
|
||||
-- Created on: 1991-12-13
|
||||
-- Created by: Christophe MARION
|
||||
-- Copyright (c) 1991-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 Intrv
|
||||
|
||||
---Purpose:
|
||||
uses
|
||||
Standard,
|
||||
TCollection
|
||||
|
||||
is
|
||||
-- other
|
||||
enumeration Position is -- me **------------***
|
||||
Before, -- **---*
|
||||
JustBefore, -- **--------*
|
||||
OverlappingAtStart, -- **--------------*
|
||||
JustEnclosingAtEnd, -- **----------------------*
|
||||
Enclosing, -- **------------------------------*
|
||||
JustOverlappingAtStart, -- *---------*
|
||||
Similar, -- *-------------*
|
||||
JustEnclosingAtStart, -- *---------------------*
|
||||
Inside, -- *---*
|
||||
JustOverlappingAtEnd, -- *-------*
|
||||
OverlappingAtEnd, -- *---------------*
|
||||
JustAfter, -- *-------*
|
||||
After -- *--*
|
||||
end Position;
|
||||
|
||||
class Interval;
|
||||
class Intervals;
|
||||
imported SequenceOfInterval;
|
||||
|
||||
end Intrv;
|
@@ -1,252 +0,0 @@
|
||||
-- Created on: 1991-12-13
|
||||
-- Created by: Christophe MARION
|
||||
-- Copyright (c) 1991-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 Interval from Intrv
|
||||
---Purpose:
|
||||
-- **-----------**** Other
|
||||
-- ***---* IsBefore
|
||||
-- ***----------* IsJustBefore
|
||||
-- ***---------------* IsOverlappingAtStart
|
||||
-- ***------------------------* IsJustEnclosingAtEnd
|
||||
-- ***-----------------------------------* IsEnclosing
|
||||
-- ***----* IsJustOverlappingAtStart
|
||||
-- ***-------------* IsSimilar
|
||||
-- ***------------------------* IsJustEnclosingAtStart
|
||||
-- ***-* IsInside
|
||||
-- ***------* IsJustOverlappingAtEnd
|
||||
-- ***-----------------* IsOverlappingAtEnd
|
||||
-- ***--------* IsJustAfter
|
||||
-- ***---* IsAfter
|
||||
|
||||
|
||||
uses
|
||||
Real from Standard,
|
||||
ShortReal from Standard,
|
||||
Integer from Standard,
|
||||
Position from Intrv
|
||||
|
||||
is
|
||||
Create returns Interval from Intrv;
|
||||
|
||||
Create(Start, End : Real from Standard) returns Interval from Intrv;
|
||||
|
||||
Create(Start : Real from Standard;
|
||||
TolStart : ShortReal from Standard;
|
||||
End : Real from Standard;
|
||||
TolEnd : ShortReal from Standard)
|
||||
returns Interval from Intrv;
|
||||
|
||||
Start(me) returns Real from Standard
|
||||
---C++: inline
|
||||
is static;
|
||||
|
||||
End(me) returns Real from Standard
|
||||
---C++: inline
|
||||
is static;
|
||||
|
||||
TolStart(me) returns ShortReal from Standard
|
||||
---C++: inline
|
||||
is static;
|
||||
|
||||
TolEnd(me) returns ShortReal from Standard
|
||||
---C++: inline
|
||||
is static;
|
||||
|
||||
Bounds(me; Start : out Real from Standard;
|
||||
TolStart : out ShortReal from Standard;
|
||||
End : out Real from Standard;
|
||||
TolEnd : out ShortReal from Standard)
|
||||
---C++: inline
|
||||
is static;
|
||||
|
||||
SetStart(me : in out; Start : Real from Standard;
|
||||
TolStart : ShortReal from Standard)
|
||||
---C++: inline
|
||||
is static;
|
||||
|
||||
FuseAtStart(me : in out; Start : Real from Standard;
|
||||
TolStart : ShortReal from Standard)
|
||||
---C++: inline
|
||||
---Purpose:
|
||||
-- ****+****--------------------> Old one
|
||||
-- ****+****------------------------> New one to fuse
|
||||
-- <<< <<<
|
||||
-- ****+****------------------------> result
|
||||
is static;
|
||||
|
||||
CutAtStart(me : in out; Start : Real from Standard;
|
||||
TolStart : ShortReal from Standard)
|
||||
---C++: inline
|
||||
---Purpose:
|
||||
-- ****+****-----------> Old one
|
||||
-- <----------**+** Tool for cutting
|
||||
-- >>> >>>
|
||||
-- ****+****-----------> result
|
||||
is static;
|
||||
|
||||
SetEnd(me : in out; End : Real from Standard;
|
||||
TolEnd : ShortReal from Standard)
|
||||
---C++: inline
|
||||
is static;
|
||||
|
||||
FuseAtEnd(me : in out; End : Real from Standard;
|
||||
TolEnd : ShortReal from Standard)
|
||||
---C++: inline
|
||||
---Purpose:
|
||||
-- <---------------------****+**** Old one
|
||||
-- <-----------------**+** New one to fuse
|
||||
-- >>> >>>
|
||||
-- <---------------------****+**** result
|
||||
is static;
|
||||
|
||||
CutAtEnd(me : in out; End : Real from Standard;
|
||||
TolEnd : ShortReal from Standard)
|
||||
---C++: inline
|
||||
---Purpose:
|
||||
-- <-----****+**** Old one
|
||||
-- **+**------> Tool for cutting
|
||||
-- <<< <<<
|
||||
-- <-----****+**** result
|
||||
is static;
|
||||
|
||||
IsProbablyEmpty(me) returns Boolean from Standard
|
||||
---C++: inline
|
||||
---Purpose: True if myStart+myTolStart > myEnd-myTolEnd
|
||||
-- or if myEnd+myTolEnd > myStart-myTolStart
|
||||
is static;
|
||||
|
||||
Position(me; Other : Interval from Intrv) returns Position from Intrv
|
||||
---Purpose: True if me is Before Other
|
||||
-- **-----------**** Other
|
||||
-- ***-----* Before
|
||||
-- ***------------* JustBefore
|
||||
-- ***-----------------* OverlappingAtStart
|
||||
-- ***--------------------------* JustEnclosingAtEnd
|
||||
-- ***-------------------------------------* Enclosing
|
||||
-- ***----* JustOverlappingAtStart
|
||||
-- ***-------------* Similar
|
||||
-- ***------------------------* JustEnclosingAtStart
|
||||
-- ***-* Inside
|
||||
-- ***------* JustOverlappingAtEnd
|
||||
-- ***-----------------* OverlappingAtEnd
|
||||
-- ***--------* JustAfter
|
||||
-- ***---* After
|
||||
is static;
|
||||
|
||||
IsBefore(me; Other : Interval from Intrv) returns Boolean from Standard
|
||||
---C++: inline
|
||||
---Purpose: True if me is Before Other
|
||||
-- ***----------------** me
|
||||
-- **-----------**** Other
|
||||
is static;
|
||||
|
||||
IsAfter(me; Other : Interval from Intrv) returns Boolean from Standard
|
||||
---C++: inline
|
||||
---Purpose: True if me is After Other
|
||||
-- **-----------**** me
|
||||
-- ***----------------** Other
|
||||
is static;
|
||||
|
||||
IsInside(me; Other : Interval from Intrv) returns Boolean from Standard
|
||||
---C++: inline
|
||||
---Purpose: True if me is Inside Other
|
||||
-- **-----------**** me
|
||||
-- ***--------------------------** Other
|
||||
is static;
|
||||
|
||||
IsEnclosing(me; Other : Interval from Intrv) returns Boolean from Standard
|
||||
---C++: inline
|
||||
---Purpose: True if me is Enclosing Other
|
||||
-- ***----------------------------**** me
|
||||
-- ***------------------** Other
|
||||
is static;
|
||||
|
||||
IsJustEnclosingAtStart(me; Other : Interval from Intrv)
|
||||
returns Boolean from Standard
|
||||
---C++: inline
|
||||
---Purpose: True if me is just Enclosing Other at start
|
||||
-- ***---------------------------**** me
|
||||
-- ***------------------** Other
|
||||
is static;
|
||||
|
||||
IsJustEnclosingAtEnd(me; Other : Interval from Intrv)
|
||||
returns Boolean from Standard
|
||||
---C++: inline
|
||||
---Purpose: True if me is just Enclosing Other at End
|
||||
-- ***----------------------------**** me
|
||||
-- ***-----------------**** Other
|
||||
is static;
|
||||
|
||||
IsJustBefore(me; Other : Interval from Intrv) returns Boolean from Standard
|
||||
---C++: inline
|
||||
---Purpose: True if me is just before Other
|
||||
-- ***--------**** me
|
||||
-- ***-----------** Other
|
||||
is static;
|
||||
|
||||
IsJustAfter(me; Other : Interval from Intrv) returns Boolean from Standard
|
||||
---C++: inline
|
||||
---Purpose: True if me is just after Other
|
||||
-- ****-------**** me
|
||||
-- ***-----------** Other
|
||||
is static;
|
||||
|
||||
IsOverlappingAtStart(me; Other : Interval from Intrv)
|
||||
returns Boolean from Standard
|
||||
---C++: inline
|
||||
---Purpose: True if me is overlapping Other at start
|
||||
-- ***---------------*** me
|
||||
-- ***-----------** Other
|
||||
is static;
|
||||
|
||||
IsOverlappingAtEnd(me; Other : Interval from Intrv)
|
||||
returns Boolean from Standard
|
||||
---C++: inline
|
||||
---Purpose: True if me is overlapping Other at end
|
||||
-- ***-----------** me
|
||||
-- ***---------------*** Other
|
||||
is static;
|
||||
|
||||
IsJustOverlappingAtStart(me; Other : Interval from Intrv)
|
||||
returns Boolean from Standard
|
||||
---C++: inline
|
||||
---Purpose: True if me is just overlapping Other at start
|
||||
-- ***-----------*** me
|
||||
-- ***------------------------** Other
|
||||
is static;
|
||||
|
||||
IsJustOverlappingAtEnd(me; Other : Interval from Intrv)
|
||||
returns Boolean from Standard
|
||||
---C++: inline
|
||||
---Purpose: True if me is just overlapping Other at end
|
||||
-- ***-----------* me
|
||||
-- ***------------------------** Other
|
||||
is static;
|
||||
|
||||
IsSimilar(me; Other : Interval from Intrv) returns Boolean from Standard
|
||||
---C++: inline
|
||||
---Purpose: True if me and Other have the same bounds
|
||||
-- *----------------*** me
|
||||
-- ***-----------------** Other
|
||||
is static;
|
||||
|
||||
fields
|
||||
myStart : Real from Standard;
|
||||
myEnd : Real from Standard;
|
||||
myTolStart : ShortReal from Standard;
|
||||
myTolEnd : ShortReal from Standard;
|
||||
|
||||
end;
|
@@ -14,7 +14,8 @@
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#include <Intrv_Interval.ixx>
|
||||
|
||||
#include <Intrv_Interval.hxx>
|
||||
|
||||
// **-----------**** Other
|
||||
// ***-----* Before
|
||||
@@ -30,12 +31,10 @@
|
||||
// ***-----------------* OverlappingAtEnd
|
||||
// ***--------* JustAfter
|
||||
// ***---* After
|
||||
|
||||
//=======================================================================
|
||||
//function : Intrv_Interval
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
|
||||
Intrv_Interval::Intrv_Interval
|
||||
() : myStart(RealFirst()), myEnd (RealLast ())
|
||||
{
|
||||
|
214
src/Intrv/Intrv_Interval.hxx
Normal file
214
src/Intrv/Intrv_Interval.hxx
Normal file
@@ -0,0 +1,214 @@
|
||||
// Created on: 1991-12-13
|
||||
// Created by: Christophe MARION
|
||||
// Copyright (c) 1991-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 _Intrv_Interval_HeaderFile
|
||||
#define _Intrv_Interval_HeaderFile
|
||||
|
||||
#include <Standard.hxx>
|
||||
#include <Standard_DefineAlloc.hxx>
|
||||
#include <Standard_Handle.hxx>
|
||||
|
||||
#include <Standard_Real.hxx>
|
||||
#include <Standard_ShortReal.hxx>
|
||||
#include <Standard_Boolean.hxx>
|
||||
#include <Intrv_Position.hxx>
|
||||
|
||||
|
||||
|
||||
//! **-----------**** Other
|
||||
//! ***---* IsBefore
|
||||
//! ***----------* IsJustBefore
|
||||
//! ***---------------* IsOverlappingAtStart
|
||||
//! ***------------------------* IsJustEnclosingAtEnd
|
||||
//! ***-----------------------------------* IsEnclosing
|
||||
//! ***----* IsJustOverlappingAtStart
|
||||
//! ***-------------* IsSimilar
|
||||
//! ***------------------------* IsJustEnclosingAtStart
|
||||
//! ***-* IsInside
|
||||
//! ***------* IsJustOverlappingAtEnd
|
||||
//! ***-----------------* IsOverlappingAtEnd
|
||||
//! ***--------* IsJustAfter
|
||||
//! ***---* IsAfter
|
||||
class Intrv_Interval
|
||||
{
|
||||
public:
|
||||
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
|
||||
Standard_EXPORT Intrv_Interval();
|
||||
|
||||
Standard_EXPORT Intrv_Interval(const Standard_Real Start, const Standard_Real End);
|
||||
|
||||
Standard_EXPORT Intrv_Interval(const Standard_Real Start, const Standard_ShortReal TolStart, const Standard_Real End, const Standard_ShortReal TolEnd);
|
||||
|
||||
Standard_Real Start() const;
|
||||
|
||||
Standard_Real End() const;
|
||||
|
||||
Standard_ShortReal TolStart() const;
|
||||
|
||||
Standard_ShortReal TolEnd() const;
|
||||
|
||||
void Bounds (Standard_Real& Start, Standard_ShortReal& TolStart, Standard_Real& End, Standard_ShortReal& TolEnd) const;
|
||||
|
||||
void SetStart (const Standard_Real Start, const Standard_ShortReal TolStart);
|
||||
|
||||
|
||||
//! ****+****--------------------> Old one
|
||||
//! ****+****------------------------> New one to fuse
|
||||
//! <<< <<<
|
||||
//! ****+****------------------------> result
|
||||
void FuseAtStart (const Standard_Real Start, const Standard_ShortReal TolStart);
|
||||
|
||||
|
||||
//! ****+****-----------> Old one
|
||||
//! <----------**+** Tool for cutting
|
||||
//! >>> >>>
|
||||
//! ****+****-----------> result
|
||||
void CutAtStart (const Standard_Real Start, const Standard_ShortReal TolStart);
|
||||
|
||||
void SetEnd (const Standard_Real End, const Standard_ShortReal TolEnd);
|
||||
|
||||
|
||||
//! <---------------------****+**** Old one
|
||||
//! <-----------------**+** New one to fuse
|
||||
//! >>> >>>
|
||||
//! <---------------------****+**** result
|
||||
void FuseAtEnd (const Standard_Real End, const Standard_ShortReal TolEnd);
|
||||
|
||||
|
||||
//! <-----****+**** Old one
|
||||
//! **+**------> Tool for cutting
|
||||
//! <<< <<<
|
||||
//! <-----****+**** result
|
||||
void CutAtEnd (const Standard_Real End, const Standard_ShortReal TolEnd);
|
||||
|
||||
//! True if myStart+myTolStart > myEnd-myTolEnd
|
||||
//! or if myEnd+myTolEnd > myStart-myTolStart
|
||||
Standard_Boolean IsProbablyEmpty() const;
|
||||
|
||||
//! True if me is Before Other
|
||||
//! **-----------**** Other
|
||||
//! ***-----* Before
|
||||
//! ***------------* JustBefore
|
||||
//! ***-----------------* OverlappingAtStart
|
||||
//! ***--------------------------* JustEnclosingAtEnd
|
||||
//! ***-------------------------------------* Enclosing
|
||||
//! ***----* JustOverlappingAtStart
|
||||
//! ***-------------* Similar
|
||||
//! ***------------------------* JustEnclosingAtStart
|
||||
//! ***-* Inside
|
||||
//! ***------* JustOverlappingAtEnd
|
||||
//! ***-----------------* OverlappingAtEnd
|
||||
//! ***--------* JustAfter
|
||||
//! ***---* After
|
||||
Standard_EXPORT Intrv_Position Position (const Intrv_Interval& Other) const;
|
||||
|
||||
//! True if me is Before Other
|
||||
//! ***----------------** me
|
||||
//! **-----------**** Other
|
||||
Standard_Boolean IsBefore (const Intrv_Interval& Other) const;
|
||||
|
||||
//! True if me is After Other
|
||||
//! **-----------**** me
|
||||
//! ***----------------** Other
|
||||
Standard_Boolean IsAfter (const Intrv_Interval& Other) const;
|
||||
|
||||
//! True if me is Inside Other
|
||||
//! **-----------**** me
|
||||
//! ***--------------------------** Other
|
||||
Standard_Boolean IsInside (const Intrv_Interval& Other) const;
|
||||
|
||||
//! True if me is Enclosing Other
|
||||
//! ***----------------------------**** me
|
||||
//! ***------------------** Other
|
||||
Standard_Boolean IsEnclosing (const Intrv_Interval& Other) const;
|
||||
|
||||
//! True if me is just Enclosing Other at start
|
||||
//! ***---------------------------**** me
|
||||
//! ***------------------** Other
|
||||
Standard_Boolean IsJustEnclosingAtStart (const Intrv_Interval& Other) const;
|
||||
|
||||
//! True if me is just Enclosing Other at End
|
||||
//! ***----------------------------**** me
|
||||
//! ***-----------------**** Other
|
||||
Standard_Boolean IsJustEnclosingAtEnd (const Intrv_Interval& Other) const;
|
||||
|
||||
//! True if me is just before Other
|
||||
//! ***--------**** me
|
||||
//! ***-----------** Other
|
||||
Standard_Boolean IsJustBefore (const Intrv_Interval& Other) const;
|
||||
|
||||
//! True if me is just after Other
|
||||
//! ****-------**** me
|
||||
//! ***-----------** Other
|
||||
Standard_Boolean IsJustAfter (const Intrv_Interval& Other) const;
|
||||
|
||||
//! True if me is overlapping Other at start
|
||||
//! ***---------------*** me
|
||||
//! ***-----------** Other
|
||||
Standard_Boolean IsOverlappingAtStart (const Intrv_Interval& Other) const;
|
||||
|
||||
//! True if me is overlapping Other at end
|
||||
//! ***-----------** me
|
||||
//! ***---------------*** Other
|
||||
Standard_Boolean IsOverlappingAtEnd (const Intrv_Interval& Other) const;
|
||||
|
||||
//! True if me is just overlapping Other at start
|
||||
//! ***-----------*** me
|
||||
//! ***------------------------** Other
|
||||
Standard_Boolean IsJustOverlappingAtStart (const Intrv_Interval& Other) const;
|
||||
|
||||
//! True if me is just overlapping Other at end
|
||||
//! ***-----------* me
|
||||
//! ***------------------------** Other
|
||||
Standard_Boolean IsJustOverlappingAtEnd (const Intrv_Interval& Other) const;
|
||||
|
||||
//! True if me and Other have the same bounds
|
||||
//! *----------------*** me
|
||||
//! ***-----------------** Other
|
||||
Standard_Boolean IsSimilar (const Intrv_Interval& Other) const;
|
||||
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
private:
|
||||
|
||||
|
||||
|
||||
Standard_Real myStart;
|
||||
Standard_Real myEnd;
|
||||
Standard_ShortReal myTolStart;
|
||||
Standard_ShortReal myTolEnd;
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
#include <Intrv_Interval.lxx>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#endif // _Intrv_Interval_HeaderFile
|
@@ -1,81 +0,0 @@
|
||||
-- Created on: 1991-12-13
|
||||
-- Created by: Christophe MARION
|
||||
-- Copyright (c) 1991-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 Intervals from Intrv
|
||||
---Purpose: The class Intervals is a sorted sequence of non
|
||||
-- overlapping Real Intervals.
|
||||
|
||||
uses
|
||||
Integer from Standard,
|
||||
Interval from Intrv,
|
||||
SequenceOfInterval from Intrv
|
||||
|
||||
raises
|
||||
OutOfRange
|
||||
|
||||
is
|
||||
Create returns Intervals from Intrv;
|
||||
---Purpose: Creates a void sequence of intervals.
|
||||
|
||||
Create(Int : Interval from Intrv) returns Intervals from Intrv;
|
||||
---Purpose: Creates a sequence of one interval.
|
||||
|
||||
Create(Int : Intervals from Intrv) returns Intervals from Intrv;
|
||||
---Purpose: Creates by copying an existing sequence of
|
||||
-- intervals.
|
||||
|
||||
Intersect(me : in out; Tool : Interval from Intrv)
|
||||
---Purpose: Intersects the intervals with the interval <Tool>.
|
||||
is static;
|
||||
|
||||
Intersect(me : in out; Tool : Intervals from Intrv)
|
||||
---Purpose: Intersects the intervals with the intervals in the
|
||||
-- sequence <Tool>.
|
||||
is static;
|
||||
|
||||
Subtract(me : in out; Tool : Interval from Intrv)
|
||||
is static;
|
||||
|
||||
Subtract(me : in out; Tool : Intervals from Intrv)
|
||||
is static;
|
||||
|
||||
Unite(me : in out; Tool : Interval from Intrv)
|
||||
is static;
|
||||
|
||||
Unite(me : in out; Tool : Intervals from Intrv)
|
||||
is static;
|
||||
|
||||
XUnite(me : in out; Tool : Interval from Intrv)
|
||||
is static;
|
||||
|
||||
XUnite(me : in out; Tool : Intervals from Intrv)
|
||||
is static;
|
||||
|
||||
NbIntervals(me) returns Integer from Standard
|
||||
---C++: inline
|
||||
is static;
|
||||
|
||||
Value(me; Index : Integer from Standard)
|
||||
returns Interval from Intrv
|
||||
---C++: inline
|
||||
---C++: return const &
|
||||
raises OutOfRange from Standard
|
||||
is static;
|
||||
|
||||
fields
|
||||
myInter : SequenceOfInterval from Intrv;
|
||||
|
||||
end Intervals;
|
@@ -17,7 +17,11 @@
|
||||
#ifndef No_Exception
|
||||
#define No_Exception
|
||||
#endif
|
||||
#include <Intrv_Intervals.ixx>
|
||||
|
||||
|
||||
#include <Intrv_Interval.hxx>
|
||||
#include <Intrv_Intervals.hxx>
|
||||
#include <Standard_OutOfRange.hxx>
|
||||
|
||||
// **---------**** Other
|
||||
// ***-----* IsBefore
|
||||
@@ -33,12 +37,10 @@
|
||||
// ***-----------------* IsOverlappingAtEnd
|
||||
// ***--------* IsJustAfter
|
||||
// ***---* IsAfter
|
||||
|
||||
//=======================================================================
|
||||
//function : Intrv_Intervals
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
|
||||
Intrv_Intervals::Intrv_Intervals ()
|
||||
{}
|
||||
|
||||
|
97
src/Intrv/Intrv_Intervals.hxx
Normal file
97
src/Intrv/Intrv_Intervals.hxx
Normal file
@@ -0,0 +1,97 @@
|
||||
// Created on: 1991-12-13
|
||||
// Created by: Christophe MARION
|
||||
// Copyright (c) 1991-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 _Intrv_Intervals_HeaderFile
|
||||
#define _Intrv_Intervals_HeaderFile
|
||||
|
||||
#include <Standard.hxx>
|
||||
#include <Standard_DefineAlloc.hxx>
|
||||
#include <Standard_Handle.hxx>
|
||||
|
||||
#include <Intrv_SequenceOfInterval.hxx>
|
||||
#include <Standard_Integer.hxx>
|
||||
class Standard_OutOfRange;
|
||||
class Intrv_Interval;
|
||||
|
||||
|
||||
//! The class Intervals is a sorted sequence of non
|
||||
//! overlapping Real Intervals.
|
||||
class Intrv_Intervals
|
||||
{
|
||||
public:
|
||||
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
|
||||
//! Creates a void sequence of intervals.
|
||||
Standard_EXPORT Intrv_Intervals();
|
||||
|
||||
//! Creates a sequence of one interval.
|
||||
Standard_EXPORT Intrv_Intervals(const Intrv_Interval& Int);
|
||||
|
||||
//! Creates by copying an existing sequence of
|
||||
//! intervals.
|
||||
Standard_EXPORT Intrv_Intervals(const Intrv_Intervals& Int);
|
||||
|
||||
//! Intersects the intervals with the interval <Tool>.
|
||||
Standard_EXPORT void Intersect (const Intrv_Interval& Tool);
|
||||
|
||||
//! Intersects the intervals with the intervals in the
|
||||
//! sequence <Tool>.
|
||||
Standard_EXPORT void Intersect (const Intrv_Intervals& Tool);
|
||||
|
||||
Standard_EXPORT void Subtract (const Intrv_Interval& Tool);
|
||||
|
||||
Standard_EXPORT void Subtract (const Intrv_Intervals& Tool);
|
||||
|
||||
Standard_EXPORT void Unite (const Intrv_Interval& Tool);
|
||||
|
||||
Standard_EXPORT void Unite (const Intrv_Intervals& Tool);
|
||||
|
||||
Standard_EXPORT void XUnite (const Intrv_Interval& Tool);
|
||||
|
||||
Standard_EXPORT void XUnite (const Intrv_Intervals& Tool);
|
||||
|
||||
Standard_Integer NbIntervals() const;
|
||||
|
||||
const Intrv_Interval& Value (const Standard_Integer Index) const;
|
||||
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
private:
|
||||
|
||||
|
||||
|
||||
Intrv_SequenceOfInterval myInter;
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
#include <Intrv_Intervals.lxx>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#endif // _Intrv_Intervals_HeaderFile
|
38
src/Intrv/Intrv_Position.hxx
Normal file
38
src/Intrv/Intrv_Position.hxx
Normal file
@@ -0,0 +1,38 @@
|
||||
// Created on: 1991-12-13
|
||||
// Created by: Christophe MARION
|
||||
// Copyright (c) 1991-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 _Intrv_Position_HeaderFile
|
||||
#define _Intrv_Position_HeaderFile
|
||||
|
||||
|
||||
enum Intrv_Position
|
||||
{
|
||||
Intrv_Before,
|
||||
Intrv_JustBefore,
|
||||
Intrv_OverlappingAtStart,
|
||||
Intrv_JustEnclosingAtEnd,
|
||||
Intrv_Enclosing,
|
||||
Intrv_JustOverlappingAtStart,
|
||||
Intrv_Similar,
|
||||
Intrv_JustEnclosingAtStart,
|
||||
Intrv_Inside,
|
||||
Intrv_JustOverlappingAtEnd,
|
||||
Intrv_OverlappingAtEnd,
|
||||
Intrv_JustAfter,
|
||||
Intrv_After
|
||||
};
|
||||
|
||||
#endif // _Intrv_Position_HeaderFile
|
Reference in New Issue
Block a user