CFx SDK Documentation 2026 SP0
Loading...
Searching...
No Matches
HatchPattern.h
Go to the documentation of this file.
1
2// Copyright (C) 2002-2024, Open Design Alliance (the "Alliance").
3// All rights reserved.
4//
5// This software and its documentation and related materials are owned by
6// the Alliance. The software may only be incorporated into application
7// programs owned by members of the Alliance, subject to a signed
8// Membership Agreement and Supplemental Software License Agreement with the
9// Alliance. The structure and organization of this software are the valuable
10// trade secrets of the Alliance and its suppliers. The software is also
11// protected by copyright law and international treaty provisions. Application
12// programs incorporating this software must include the following statement
13// with their copyright notices:
14//
15// This application incorporates Open Design Alliance software pursuant to a license
16// agreement with Open Design Alliance.
17// Open Design Alliance Copyright (C) 2002-2024 by Open Design Alliance.
18// All rights reserved.
19//
20// By use of this software, its documentation or related materials, you
21// acknowledge and accept the above terms.
23
24
25
26
27#ifndef OD_HATCHPATTERN_H
28#define OD_HATCHPATTERN_H
29
30#include "TD_PackPush.h"
31
32#include "Ge/GePoint2d.h"
33#include "Ge/GeVector2d.h"
34#include "Ge/GeDoubleArray.h"
35#include "CmEntityColorArray.h"
36#include "Int32Array.h"
37#include "UInt8Array.h"
38
49
62
63
70{
71public:
76
78 m_dLineAngle(0.0)
79 {
80 }
81
89
90 void transformBy(const OdGeMatrix2d& ocsXform)
91 {
92 m_basePoint.transformBy(ocsXform);
93 m_patternOffset.transformBy(ocsXform);
94
97 pO.transformBy(ocsXform);
98 m_dLineAngle = pO.angle();
99
101 for(pDash = m_dashes.begin(); pDash != m_dashes.end(); ++ pDash)
102 {
103 (*pDash) *= pO.length();
104 }
105 }
106 void scale(double s)
107 {
108 m_patternOffset *= s;
109 for (unsigned int j = 0; j < m_dashes.size(); ++j)
110 m_dashes[j] *= s;
111 }
112};
113
118
119#include "TD_PackPop.h"
120
121#endif //#ifndef OD_HATCHPATTERN_H
OdArray< OdGePoint3d, OdMemoryAllocator< OdGePoint3d > > OdGePoint3dArray
OdArray< OdCmEntityColor, OdMemoryAllocator< OdCmEntityColor > > OdCmEntityColorArray
OdArray< double, OdMemoryAllocator< double > > OdGeDoubleArray
OdGeIslandStyle
@ OdGeIslandStyle_Outer
@ OdGeIslandStyle_Normal
@ OdGeIslandStyle_Ignore
OdArray< OdHatchPatternLine > OdHatchPattern
OdArray< OdInt32, OdMemoryAllocator< OdInt32 > > OdInt32Array
Definition Int32Array.h:34
OdArray< OdUInt8, OdMemoryAllocator< OdUInt8 > > OdUInt8Array
Definition UInt8Array.h:35
iterator end()
Definition OdArray.h:1048
iterator begin()
Definition OdArray.h:1024
double angle() const
OdGeVector2d & rotateBy(double angle)
OdGeVector2d & transformBy(const OdGeMatrix2d &xfm)
Definition GeVector2d.h:120
double length() const
static GE_STATIC_EXPORT const OdGeVector2d kXAxis
Definition GeVector2d.h:76
OdGeVector2d m_patternOffset
OdGePoint2d m_basePoint
OdHatchPatternLine(const OdHatchPatternLine &pat)
void scale(double s)
OdGeDoubleArray m_dashes
void transformBy(const OdGeMatrix2d &ocsXform)
OdGePoint3dArray m_vertices
OdUInt8Array m_edgeVisibilities
OdCmEntityColorArray m_colors
OdInt32Array m_faces