-- Reason : Traitement des Markers (G400)
-- Purpose: Specifications definitives
-- Modified: 15/01/98 ; FMN : Ajout Hidden Line
--- Modified: 07/07/98 ; DCB : Adding plotmode enum
--- Modified: 07-07-98 by DCB (S3602 study)
--- Adding plotmode enum
--- Modified: 20-07-98 by DCB (S3602 study)
--- Adding Plotter and PlotterConfigTool classes
--- to plotters (PLO)
--- Modified: 22-07-98 by DCB
--- Adding DriverPtr, PlotterDriverPtr, WindowDriverPtr
--- pointers.
-- Modified: 24/08/98 ; CAL : S3892. Ajout grilles 3d.
-- Modified: 16-09-98 by BGN (S3989)
--- Adding TypeOfTriedronEcho, TypeOfTriedronPosition.
-- Modified: 30-11-98 ; FMN : S4069. Textes always visible.
--- Modified: 30/10/98 : DCB : S4046
--- Adding class PlotterParameter and changing the Plotter's class
--- implementation according to new PLO specifications (S3604 ???)
--- Also new classes : (H)Array1OfPlotterParameter
--- New enumeration : TypeOfPlotterParameter.
--- New exception : PlotterParameterError.
--- Modified: 25-NOV-98 : DCB
--- Removing all plotters specific implementation from Aspect.
--- These classes and enums will now be located in PlotMgt.
-- Modified: 17-NOV-99 : GG GER61351
-- Add TypeOfFacingModel enum
-- Modified: 20-JAN-00 : GG
end GridType;
---Purpose: Defines the grid type : Rectangular or Circular.
- --------- Start DCB modification ----------------------------------------
- enumeration PlotMode is
- PM_DPLOTTER,
- PM_FILEONLY,
- PM_NPLOTTER
- end PlotMode;
- ---Purpose: Defines plot mode for plotter drivers derived from
- -- Aspect_PlotterDriver:
- -- 1) PM_DPLOTTER - send file to plotter and delete file
- -- 2) PM_FILEONLY - do not send file to the plotter
- -- 3) PM_NPLOTTER - send file to the plotter but not delete a file
-
-
- enumeration ListingType is
- LPID_DIRPLOT,
- LPID_DIRPARPLO,
- LPID_ALLDIRS
- end ListingType;
- ---Purpose: Defines where to search plotter files (PLO)
-
- enumeration PlotterOrigin is
- PO_CENTER,
- PO_BOTTOMLEFT,
- PO_TOPLEFT,
- PO_TOPRIGHT,
- PO_BOTTOMRIGHT,
- PO_UNKNOWN
- end PlotterOrigin;
- --------- Stop DCB modification ----------------------------------------
-
-
enumeration TypeOfTriedronEcho is TOTE_NONE,
TOTE_ORIGIN,
TOTE_AXIS_X,
exception MaterialDefinitionError inherits OutOfRange;
---Category: Exceptions
- exception PlotterDefinitionError inherits OutOfRange;
- ---Category: The exceptions
-
exception PriorityDefinitionError inherits OutOfRange;
---Category: Exceptions
deferred class DataStructureManager;
---Category: Classes
- deferred class Plotter;
- ---Category: The classes
-
class Vector;
---Category: Classes
+++ /dev/null
--- Created on: 1997-04-18
--- Created by: JLF, CAL
--- Copyright (c) 1997-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.
-
-deferred class Plotter from Graphic3d inherits TShared from MMgt
-
- ---Version:
-
- ---Purpose: This class allows the definition of a plotter
-
- ---Keywords:
-
- ---Warning:
- ---References:
-
-uses
-
- DataStructureManager from Graphic3d
-
-raises
-
- PlotterDefinitionError from Graphic3d
-
-is
-
- Initialize
- ---Level: Public
- ---Purpose: Initialise the constructor of the plotter.
- -- Warning: Raises InitialisationError if the initialisation
- -- of the plotter failed.
- raises PlotterDefinitionError from Graphic3d;
- -- if the initialisation of the plotter failed.
-
- Destroy ( me : mutable )
- is virtual;
- ---Level: Public
- ---Purpose: Deletes the plotter <me>.
- ---C++: alias ~
-
- ---------------------------------------------------
- -- Category: Methods to modify the class definition
- ---------------------------------------------------
-
- BeginPlot ( me : mutable;
- aProjector : DataStructureManager from Graphic3d )
- returns Boolean from Standard
- raises PlotterDefinitionError from Graphic3d
- is virtual;
- ---Level: Public
- ---Purpose:
- -- Warning: Returns Standard_True if plotting is enabled in the view.
- -- Raises PlotterDefinitionError from Graphic3d
- -- if plotting has already started.
- ---Category: Methods to modify the class definition
-
- EndPlot ( me : mutable )
- raises PlotterDefinitionError from Graphic3d
- is virtual;
- ---Level: Public
- ---Purpose: Stops the plotting.
- -- Warning: Raises PlotterDefinitionError from Graphic3d
- -- if plotting has not started yet.
- ---Category: Methods to modify the class definition
-
- ----------------------------
- -- Category: Inquire methods
- ----------------------------
-
- PlottingState ( me )
- returns Boolean from Standard
- is deferred;
- ---Level: Public
- ---Purpose:
- ---Category: Inquire methods
-
---\f
-
-fields
-
---
--- Class : Graphic3d_Plotter
---
--- Purpose : Declaration of variables specific to plotters
---
--- Reminder : A plotter
-
- -- the update display mode
- MyPlottingState : Boolean from Standard is protected;
-
-end Plotter from Graphic3d;
+++ /dev/null
-// Created on: 1997-04-21
-// Created by: JLF, CAL
-// Copyright (c) 1997-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.
-
-//-Version
-
-//-Design Declaration des variables specifiques aux plotters
-
-//-Warning
-
-//-References
-
-//-Language C++ 2.0
-
-//-Declarations
-
-// for the class
-#include <Graphic3d_Plotter.ixx>
-
-//-Aliases
-
-//-Global data definitions
-
-//-Constructors
-
-Graphic3d_Plotter::Graphic3d_Plotter ():
-MyPlottingState (Standard_False) {
-
-}
-
-//-Destructors
-
-void Graphic3d_Plotter::Destroy () {
-
-}
-
-//-Methods, in order
-
-Standard_Boolean Graphic3d_Plotter::BeginPlot (const Handle(Graphic3d_DataStructureManager)& /*aProjector*/) {
-
- if (MyPlottingState)
- Graphic3d_PlotterDefinitionError::Raise
- ("Graphic3d_Plotter::BeginPlot\n");
-
- MyPlottingState = Standard_True;
-
- Graphic3d_PlotterDefinitionError::Raise
- ("Graphic3d_Plotter::BeginPlot\n");
-
- return MyPlottingState;
-
-}
-
-void Graphic3d_Plotter::EndPlot () {
-
- if (! MyPlottingState)
- Graphic3d_PlotterDefinitionError::Raise
- ("Graphic3d_Plotter::EndPlot\n");
-
- MyPlottingState = Standard_False;
-
- Graphic3d_PlotterDefinitionError::Raise
- ("Graphic3d_Plotter::EndPlot\n");
-
-}
-
-Standard_Boolean Graphic3d_Plotter::PlottingState () const {
-
- return (MyPlottingState);
-
-}
SequenceOfStructure from Graphic3d,
HSequenceOfStructure from Graphic3d,
MapOfStructure from Graphic3d,
- Plotter from Graphic3d,
StructureManager from Graphic3d,
StructureManagerPtr from Graphic3d,
TypeOfComposition from Graphic3d,
-- theXMax = theYMax = theZMax = RealLast().
---Category: Private methods
- Plot ( me : mutable;
- aPlotter : Plotter from Graphic3d )
- is virtual;
- ---Level: Internal
- ---Category: Private methods
-
PrintNetwork ( myclass;
AStructure : Structure from Graphic3d;
AType : TypeOfConnection from Graphic3d );
}
}
-//=============================================================================
-//function : Plot
-//purpose :
-//=============================================================================
-void Graphic3d_Structure::Plot (const Handle(Graphic3d_Plotter)& )
-{
- //
-}
-
//=============================================================================
//function : SetHLRValidation
//purpose :
ContextView from Visual3d,
Vector from Graphic3d,
Vertex from Graphic3d,
- Plotter from Graphic3d,
Camera_Handle from Graphic3d,
Window from Aspect,
PixMap from Image,
WindowFitAll ( me : mutable ; Xmin, Ymin, Xmax, Ymax : Integer);
---Purpose: idem than WindowFit
- SetPlotter ( me : mutable; aPlotter : Plotter from Graphic3d )
- ---Purpose: Set a plotter for plotting the contents of the view
- -- field MyPlotter
- is virtual;
-
- Plot ( me : mutable )
- ---Purpose: Create a 2D View for plotting the contents of the view
- raises BadValue from V3d;
- -- if the plotter is undefined.
-
Compute ( me; AVertex : Vertex from Graphic3d )
returns Vertex from Graphic3d
is static private;
MyWindow: Window from Aspect;
- MyPlotter: Plotter from Graphic3d;
-
myActiveLightsIterator: ListIteratorOfListOfTransient from TColStd;
sx,sy: Integer from Standard;
ne marche pas. Contournement en appelant WNT_Window::Size(Int,Int).
16-08-98 : CAL ; S3892. Ajout grilles 3d.
09-09-98 : CAL ; S3892. Generalisation de TrsPoint.
-24-09-98 : CAL ; Ajout d'un parametre a V3d_View::SetPlotter.
06-10-98 : CAL ; Ajout d'un TIMER si CSF_GraphicTimer est definie.
16-10-98 : CAL ; Retrait d'un TIMER si CSF_GraphicTimer est definie.
06-11-98 : CAL ; PRO ?????. Probleme dans ZFitAll si un point dans la vue.
}
}
-//=============================================================================
-//function : SetPlotter
-//purpose :
-//=============================================================================
-void V3d_View::SetPlotter(const Handle(Graphic3d_Plotter)& aPlotter)
-{
- MyPlotter = aPlotter;
-}
-
-//=============================================================================
-//function : Plot
-//purpose :
-//=============================================================================
-void V3d_View::Plot()
-{
- V3d_BadValue_Raise_if( !MyPlotter.IsNull(), "view has no plotter");
- MyView->Plot(MyPlotter);
-}
-
//=============================================================================
//function : Dump
//purpose :
CView from Graphic3d,
GraphicDriver from Graphic3d,
PtrFrameBuffer from Graphic3d,
- Plotter from Graphic3d,
Structure from Graphic3d,
SequenceOfStructure from Graphic3d,
MapOfStructure from Graphic3d,
---Purpose: Returns an index != 0 if the structure <AStructure>
-- have the same owner than another structure in the
-- sequence of the computed structures.
- ---Category: Private methods
-
- Plot ( me;
- APlotter : Plotter from Graphic3d )
- is static;
- ---Level: Internal
- ---Purpose: Calls the method Plot for each Structure
- -- displayed in <me>.
---Category: Private methods
Print (me; AnUnderLayer : Layer from Visual3d;
--------------------------------
Mars 1992 : NW,JPB,CAL ; Creation.
04-02-97 : FMN ; Suppression de PSOutput, XWDOutput ...
- 22-04-97 : CAL ; Ajout du Plot.
03-06-97 : FMN ; Correction calcul SetRatio
06-05-97 : CAL ; Ajout du Clear sur les TOS_COMPUTED.
28-07-97 : PCT ; Ajout lumiere frontale headlight.
}
-void Visual3d_View::Plot (const Handle(Graphic3d_Plotter)& thePlotter) const
-{
- for (Graphic3d_MapIteratorOfMapOfStructure S1Iterator (MyDisplayedStructure); S1Iterator.More(); S1Iterator.Next())
- {
- Standard_Integer Index = IsComputed (S1Iterator.Key ());
- // displayed structure is plotted as if it was not calculated
- if (Index == 0)
- (S1Iterator.Key ())->Plot (thePlotter);
- else
- (MyCOMPUTEDSequence.Value (Index))->Plot (thePlotter);
- }
-}
-
Standard_Integer Visual3d_View::HaveTheSameOwner (const Handle(Graphic3d_Structure)& AStructure) const {
Standard_Integer Result = 0;