40 class SystemDependentData;
41 class SystemDependentDataManager;
62 B2DPolygon(std::initializer_list<basegfx::B2DPoint> rPoints);
78 sal_uInt32
count()
const;
85 void insert(sal_uInt32 nIndex,
const basegfx::B2DPoint& rPoint, sal_uInt32 nCount = 1);
88 void reserve(sal_uInt32 nCount);
98 void resetPrevControlPoint(sal_uInt32 nIndex);
99 void resetNextControlPoint(sal_uInt32 nIndex);
100 void resetControlPoints();
113 bool areControlPointsUsed()
const;
114 bool isPrevControlPointUsed(sal_uInt32 nIndex)
const;
115 bool isNextControlPointUsed(sal_uInt32 nIndex)
const;
131 void getBezierSegment(sal_uInt32 nIndex,
B2DCubicBezier& rTarget)
const;
162 B2DPolygon const & getDefaultAdaptiveSubdivision()
const;
191 B2DRange const & getB2DRange()
const;
208 void append(
const B2DPolygon& rPoly, sal_uInt32 nIndex = 0, sal_uInt32 nCount = 0);
211 void remove(sal_uInt32 nIndex, sal_uInt32 nCount = 1);
217 bool isClosed()
const;
218 void setClosed(
bool bNew);
224 bool hasDoublePoints()
const;
227 void removeDoublePoints();
236 return std::static_pointer_cast<T>(getSystemDependantDataInternal(
typeid(T).hash_code()));
239 template<
class T,
class... Args>
242 std::shared_ptr<T> r = std::make_shared<T>(std::forward<Args>(
args)...);
245 if(r->calculateCombinedHoldCyclesInSeconds() > 0)
248 addOrReplaceSystemDependentDataInternal(r2);
264 template<
typename charT,
typename traits >
265 inline std::basic_ostream<charT, traits> &
operator <<(
266 std::basic_ostream<charT, traits> & stream,
const B2DPolygon& poly )
269 for (sal_uInt32
i = 0;
i < poly.
count();
i++)
#define BASEGFX_DLLPUBLIC
Base Point class with two double values.
std::shared_ptr< T > getSystemDependentData() const
B2DPolygon(const B2DPolygon &rPolygon)
B2DPolygon & operator=(const B2DPolygon &rPolygon)
assignment operator
basegfx::B2DPoint const & getB2DPoint(sal_uInt32 nIndex) const
Coordinate interface.
o3tl::cow_wrapper< ImplB2DPolygon > ImplType
std::shared_ptr< T > addOrReplaceSystemDependentData(Args &&... args) const
sal_uInt32 count() const
member count
B2DPolygon(B2DPolygon &&rPolygon)
B2DPolygon & operator=(B2DPolygon &&rPolygon)
A two-dimensional interval over doubles.
Base Point class with two double values.
Reference< XOutputStream > stream
B2VectorContinuity getContinuityInPoint(const B2DPolygon &rCandidate, sal_uInt32 nIndex)
std::basic_ostream< charT, traits > & operator<<(std::basic_ostream< charT, traits > &stream, BColor const &color)
B2VectorContinuity
Descriptor for the mathematical continuity of two 2D Vectors.
::std::vector< B2DPolygon > B2DPolygonVector
std::shared_ptr< SystemDependentData > SystemDependentData_SharedPtr
OUStringBuffer & remove(OUStringBuffer &rIn, sal_Unicode c)
bool operator!=(const XclExpString &rLeft, const XclExpString &rRight)
bool operator==(const XclFontData &rLeft, const XclFontData &rRight)