-- Created on: 1992-02-18 -- Created by: Christophe MARION -- Copyright (c) 1992-1999 Matra Datavision -- Copyright (c) 1999-2012 OPEN CASCADE SAS -- -- The content of this file is subject to the Open CASCADE Technology Public -- License Version 6.5 (the "License"). You may not use the content of this file -- except in compliance with the License. Please obtain a copy of the License -- at http://www.opencascade.org and read it completely before using this file. -- -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France. -- -- The Original Code and all software distributed under the License is -- distributed on an "AS IS" basis, without warranty of any kind, and the -- Initial Developer hereby disclaims all such warranties, including without -- limitation, any warranties of merchantability, fitness for a particular -- purpose or non-infringement. Please see the License for the specific terms -- and conditions governing the rights and limitations under the License. class EdgeStatus from HLRAlgo ---Purpose: This class describes the Hidden Line status of an -- Edge. It contains : -- -- The Bounds of the Edge and their tolerances -- -- Two flags indicating if the edge is full visible -- or full hidden. -- -- The Sequence of visible Intervals on the Edge. uses Integer from Standard, ShortReal from Standard, Real from Standard, Boolean from Standard, Intervals from Intrv raises OutOfRange is Create returns EdgeStatus from HLRAlgo; Create(Start : Real from Standard; TolStart : ShortReal from Standard; End : Real from Standard; TolEnd : ShortReal from Standard) returns EdgeStatus from HLRAlgo; ---Purpose: Creates a new EdgeStatus. Default visible. The -- Edge is bounded by the interval , -- with the tolerances , . Initialize(me : in out; Start : Real from Standard; TolStart : ShortReal from Standard; End : Real from Standard; TolEnd : ShortReal from Standard) ---Purpose: Initialize an EdgeStatus. Default visible. The -- Edge is bounded by the interval , -- with the tolerances , . 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; NbVisiblePart(me) returns Integer from Standard is static; VisiblePart(me; Index : Integer from Standard; Start : out Real from Standard; TolStart : out ShortReal from Standard; End : out Real from Standard; TolEnd : out ShortReal from Standard) is static; Hide(me : in out; Start : Real from Standard; TolStart : ShortReal from Standard; End : Real from Standard; TolEnd : ShortReal from Standard; OnFace : Boolean from Standard; OnBoundary : Boolean from Standard) ---Purpose: Hides the interval , with the -- tolerances , . This interval is -- subtracted from the visible parts. If the hidden -- part is on ( or under ) the face the flag -- is True ( or False ). If the hidden part is on ( -- or inside ) the boundary of the face the flag -- is True ( or False ). is static; HideAll(me : in out) ---C++: inline ---Purpose: Hide the whole Edge. is static; ShowAll(me : in out) ---C++: inline ---Purpose: Show the whole Edge. is static; AllHidden(me) returns Boolean from Standard ---C++: inline is static; AllHidden(me : in out; B : Boolean from Standard) ---C++: inline is static; AllVisible(me) returns Boolean from Standard ---C++: inline is static; AllVisible(me : in out; B : Boolean from Standard) ---C++: inline is static; fields myStart : Real from Standard; myEnd : Real from Standard; myTolStart : ShortReal from Standard; myTolEnd : ShortReal from Standard; myFlags : Boolean from Standard; myVisibles : Intervals from Intrv; end EdgeStatus;