0031682: Visualization - Prs3d_ShadingAspect::SetTransparency() has no effect with...
[occt.git] / src / IGESDraw / IGESDraw_SegmentedViewsVisible.hxx
CommitLineData
42cf5bc1 1// Created on: 1993-01-09
2// Created by: CKY / Contract Toubro-Larsen ( TCD )
3// Copyright (c) 1993-1999 Matra Datavision
4// Copyright (c) 1999-2014 OPEN CASCADE SAS
5//
6// This file is part of Open CASCADE Technology software library.
7//
8// This library is free software; you can redistribute it and/or modify it under
9// the terms of the GNU Lesser General Public License version 2.1 as published
10// by the Free Software Foundation, with special exception defined in the file
11// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12// distribution for complete text of the license and disclaimer of any warranty.
13//
14// Alternatively, this file may be used under the terms of Open CASCADE
15// commercial license or contractual agreement.
16
17#ifndef _IGESDraw_SegmentedViewsVisible_HeaderFile
18#define _IGESDraw_SegmentedViewsVisible_HeaderFile
19
20#include <Standard.hxx>
21#include <Standard_Type.hxx>
22
23#include <IGESDraw_HArray1OfViewKindEntity.hxx>
24#include <TColStd_HArray1OfReal.hxx>
25#include <TColStd_HArray1OfInteger.hxx>
26#include <IGESGraph_HArray1OfColor.hxx>
27#include <IGESBasic_HArray1OfLineFontEntity.hxx>
28#include <IGESData_ViewKindEntity.hxx>
29#include <Standard_Boolean.hxx>
30#include <Standard_Integer.hxx>
31#include <Standard_Real.hxx>
32class Standard_DimensionMismatch;
33class Standard_OutOfRange;
34class IGESData_ViewKindEntity;
35class IGESGraph_Color;
36class IGESData_LineFontEntity;
37
38
39class IGESDraw_SegmentedViewsVisible;
40DEFINE_STANDARD_HANDLE(IGESDraw_SegmentedViewsVisible, IGESData_ViewKindEntity)
41
42//! defines IGESSegmentedViewsVisible, Type <402> Form <19>
43//! in package IGESDraw
44//!
45//! Permits the association of display parameters with the
46//! segments of curves in a given view
47class IGESDraw_SegmentedViewsVisible : public IGESData_ViewKindEntity
48{
49
50public:
51
52
53 Standard_EXPORT IGESDraw_SegmentedViewsVisible();
54
55 //! This method is used to set the fields of the class
56 //! SegmentedViewsVisible
57 //! - allViews : Pointers to View Entities
58 //! - allBreakpointParameters : Parameters of breakpoints
59 //! - allDisplayFlags : Display flags
60 //! - allColorValues : Color Values
61 //! - allColorDefinitions : Color Definitions
62 //! - allLineFontValues : LineFont values
63 //! - allLineFontDefinitions : LineFont Definitions
64 //! - allLineWeights : Line weights
65 //! raises exception if Lengths of allViews, allBreakpointParameters,
66 //! allDisplayFlags, allColorValues, allColorDefinitions,
67 //! allLineFontValues, allLineFontDefinitions and allLineWeights
68 //! are not same.
69 Standard_EXPORT void Init (const Handle(IGESDraw_HArray1OfViewKindEntity)& allViews, const Handle(TColStd_HArray1OfReal)& allBreakpointParameters, const Handle(TColStd_HArray1OfInteger)& allDisplayFlags, const Handle(TColStd_HArray1OfInteger)& allColorValues, const Handle(IGESGraph_HArray1OfColor)& allColorDefinitions, const Handle(TColStd_HArray1OfInteger)& allLineFontValues, const Handle(IGESBasic_HArray1OfLineFontEntity)& allLineFontDefinitions, const Handle(TColStd_HArray1OfInteger)& allLineWeights);
70
71 //! Returns False (for a complex view)
79104795 72 Standard_EXPORT Standard_Boolean IsSingle() const Standard_OVERRIDE;
42cf5bc1 73
74 //! Returns the count of Views referenced by <me> (inherited)
79104795 75 Standard_EXPORT Standard_Integer NbViews() const Standard_OVERRIDE;
42cf5bc1 76
77 //! returns the number of view/segment blocks in <me>
78 //! Similar to NbViews but has a more general significance
79 Standard_EXPORT Standard_Integer NbSegmentBlocks() const;
80
81 //! returns the View entity indicated by ViewIndex
82 //! raises an exception if ViewIndex <= 0 or
83 //! ViewIndex > NbSegmentBlocks()
79104795 84 Standard_EXPORT Handle(IGESData_ViewKindEntity) ViewItem (const Standard_Integer ViewIndex) const Standard_OVERRIDE;
42cf5bc1 85
86 //! returns the parameter of the breakpoint indicated by
87 //! BreakpointIndex
88 //! raises an exception if BreakpointIndex <= 0 or
89 //! BreakpointIndex > NbSegmentBlocks().
90 Standard_EXPORT Standard_Real BreakpointParameter (const Standard_Integer BreakpointIndex) const;
91
92 //! returns the Display flag indicated by FlagIndex
93 //! raises an exception if FlagIndex <= 0 or
94 //! FlagIndex > NbSegmentBlocks().
95 Standard_EXPORT Standard_Integer DisplayFlag (const Standard_Integer FlagIndex) const;
96
97 //! returns True if the ColorIndex'th value of the
98 //! "theColorDefinitions" field of <me> is a pointer
99 //! raises an exception if ColorIndex <= 0 or
100 //! ColorIndex > NbSegmentBlocks().
101 Standard_EXPORT Standard_Boolean IsColorDefinition (const Standard_Integer ColorIndex) const;
102
103 //! returns the Color value indicated by ColorIndex
104 //! raises an exception if ColorIndex <= 0 or
105 //! ColorIndex > NbSegmentBlocks().
106 Standard_EXPORT Standard_Integer ColorValue (const Standard_Integer ColorIndex) const;
107
108 //! returns the Color definition entity indicated by ColorIndex
109 //! raises an exception if ColorIndex <= 0 or
110 //! ColorIndex > NbSegmentBlocks().
111 Standard_EXPORT Handle(IGESGraph_Color) ColorDefinition (const Standard_Integer ColorIndex) const;
112
113 //! returns True if the FontIndex'th value of the
114 //! "theLineFontDefinitions" field of <me> is a pointer
115 //! raises an exception if FontIndex <= 0 or
116 //! FontIndex > NbSegmentBlocks().
117 Standard_EXPORT Standard_Boolean IsFontDefinition (const Standard_Integer FontIndex) const;
118
119 //! returns the LineFont value indicated by FontIndex
120 //! raises an exception if FontIndex <= 0 or
121 //! FontIndex > NbSegmentBlocks().
122 Standard_EXPORT Standard_Integer LineFontValue (const Standard_Integer FontIndex) const;
123
124 //! returns the LineFont definition entity indicated by FontIndex
125 //! raises an exception if FontIndex <= 0 or
126 //! FontIndex > NbSegmentBlocks().
127 Standard_EXPORT Handle(IGESData_LineFontEntity) LineFontDefinition (const Standard_Integer FontIndex) const;
128
129 //! returns the LineWeight value indicated by WeightIndex
130 //! raises an exception if WeightIndex <= 0 or
131 //! WeightIndex > NbSegmentBlocks().
132 Standard_EXPORT Standard_Integer LineWeightItem (const Standard_Integer WeightIndex) const;
133
134
135
136
92efcf78 137 DEFINE_STANDARD_RTTIEXT(IGESDraw_SegmentedViewsVisible,IGESData_ViewKindEntity)
42cf5bc1 138
139protected:
140
141
142
143
144private:
145
146
147 Handle(IGESDraw_HArray1OfViewKindEntity) theViews;
148 Handle(TColStd_HArray1OfReal) theBreakpointParameters;
149 Handle(TColStd_HArray1OfInteger) theDisplayFlags;
150 Handle(TColStd_HArray1OfInteger) theColorValues;
151 Handle(IGESGraph_HArray1OfColor) theColorDefinitions;
152 Handle(TColStd_HArray1OfInteger) theLineFontValues;
153 Handle(IGESBasic_HArray1OfLineFontEntity) theLineFontDefinitions;
154 Handle(TColStd_HArray1OfInteger) theLineWeights;
155
156
157};
158
159
160
161
162
163
164
165#endif // _IGESDraw_SegmentedViewsVisible_HeaderFile