Geant4 9.6.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
SbPainterPS.h
Go to the documentation of this file.
1//
2// ********************************************************************
3// * License and Disclaimer *
4// * *
5// * The Geant4 software is copyright of the Copyright Holders of *
6// * the Geant4 Collaboration. It is provided under the terms and *
7// * conditions of the Geant4 Software License, included in the file *
8// * LICENSE and available at http://cern.ch/geant4/license . These *
9// * include a list of copyright holders. *
10// * *
11// * Neither the authors of this software system, nor their employing *
12// * institutes,nor the agencies providing financial support for this *
13// * work make any representation or warranty, express or implied, *
14// * regarding this software system or assume any liability for its *
15// * use. Please see the license in the file LICENSE and URL above *
16// * for the full disclaimer and the limitation of liability. *
17// * *
18// * This code implementation is the result of the scientific and *
19// * technical work of the GEANT4 collaboration. *
20// * By using, copying, modifying or distributing the software (or *
21// * any work based on the software) you agree to acknowledge its *
22// * use in resulting scientific publications, and indicate your *
23// * acceptance of all terms of the Geant4 Software license. *
24// ********************************************************************
25//
26// History :
27// - 25/09/98, G.Barrand : creation.
28
29#ifndef HEPVis_SbPainterPS_h
30#define HEPVis_SbPainterPS_h
31
32// Inheritance :
33#include <HEPVis/SbPainter.h>
34
35#include <stdarg.h>
36
37#include <Inventor/SbViewportRegion.h>
38
39#define SbPainterPS Geant4_SbPainterPS
40
41class SbPainterPS : public SbPainter {
42public:
46 void clearColorBuffer(float,float,float);
47 //void drawPrimitive(SbPrimitiveType,
48 // int,float*,float*,float*,
49 // const SbPainterContext&);
51public:
52 void setColorScheme(int);
53 void setOrientation(int);
55 void setBitsPerPixel(int);
56 void setLineWidth(int);
57 void* getStream();
58 void setFileName(const char*);
59 const char* getFileName() const;
60 void openFileForWriting(const char*);
62 void putPageScaleInStream(float,float);
65 void putTranslationInStream(float,float);
66 void putScaleInStream(float,float);
69 void putRGB_InStream(float,float,float);
71 //void putMarkerStyleInStream(SbMarkerStyle);
72 void putBackgroundInStream(float,float,float,float,float);
73 void putFrameInStream(float,float,float,float,float);
74 void putRotateInStream(float);
79 void putCapInStream(int);
80 void putLineToInStream(float,float);
81 void putMoveInStream(float,float);
82 void putCircleInStream(float,float,float);
84 //void putLineStyleInStream(SbLineStyle);
85 typedef int(*GetRGB_Function)(unsigned int,unsigned int,
86 double&,double&,double&);
87 void putImageInStream(unsigned int,unsigned int,GetRGB_Function);
88private:
89 //void drawPolygon(int,float*,float*,float,float,float,const SbAreaStyle&);
90 //void drawLines(int,float*,float*,float,float,float,const SbLineStyle&,int);
91 //void drawMarkers(int,float*,float*,
92 // float,float,float,const SbMarkerStyle&,int);
93 enum ColorScheme {
94 Color = 0,
95 Grey = 1,
96 BlackWhite = 2
97 };
98 struct {
99 int shade;
101 int nbit;
104 } fParams;
105 float fDeviceWidth;
106 float fDeviceHeight;
107 int fPageNumber;
108 long fPagePos;
109 float fMarkerSize;
110 FILE* fFile;
111 char* fFileName;
112 int fGSave;
113 int fBufferCount;
114 char* fBufferString;
115#define METAFILE_RECORD_LENGTH 80
116 unsigned char fBufferPointer[METAFILE_RECORD_LENGTH+1];
117private:
118 void putInStreamF(const char*,...);
119 void printFLN(const char*,...);
120 void printV(const char*,va_list);
121 float convertRGB_ToGrey(float,float,float);
122 void writeByte(unsigned char);
123};
124
125#endif
126
127
128
129
130
#define METAFILE_RECORD_LENGTH
Definition: SbPainterPS.h:115
void putMoveInStream(float, float)
void endTraversal()
void putStrokeInStream()
void putCircleInStream(float, float, float)
void putBeginPageInStream()
void putClosePathInStream()
void setOrientation(int)
void beginTraversal()
void putSaveStateInStream()
void putImageInStream(unsigned int, unsigned int, GetRGB_Function)
void setBackgroundDrawn(int)
void putNewPathInStream()
void setFileName(const char *)
void putCapInStream(int)
void setBitsPerPixel(int)
void clearColorBuffer(float, float, float)
void setColorScheme(int)
void putPageScaleInStream(float, float)
void putLineToInStream(float, float)
void openFileForWriting(const char *)
float lineWidth
Definition: SbPainterPS.h:103
void setLineWidth(int)
void putRestoreStateInStream()
void putEndPageInStream()
void * getStream()
void putRotateInStream(float)
void putLineWidthInStream(int)
void putMarkerSizeInStream(float)
void putRGB_InStream(float, float, float)
void putFillInStream()
void putBackgroundInStream(float, float, float, float, float)
void putFrameInStream(float, float, float, float, float)
const char * getFileName() const
void putScaleInStream(float, float)
void putTranslationInStream(float, float)
void closeStream()