31 return sqrt(
SProd(*
this));
40 if (flen!=0)
return (*
this)*(1.0/flen);
59 aMX(fScaleX, 0.0, 0.0),
60 aMY(0.0, fScaleY, 0.0),
61 aMZ(0.0, 0.0, fScaleZ),
72 aMZ(0.0, 0.0, fScaleZ),
88 if ( fabs(rExtrusion.
fx) < 1.0/64.0 && fabs(rExtrusion.
fy) < 1.0/64.0) {
170 double fNearNull=(fMXAbs+fMYAbs)*0.001;
172 if (fabs(
aMX.
fy)<=fNearNull && fabs(
aMX.
fz)<=fNearNull &&
173 fabs(
aMY.
fx)<=fNearNull && fabs(
aMY.
fz)<=fNearNull)
175 rEx=fabs(
aMX.
fx*fRadius);
176 rEy=fabs(
aMY.
fy*fRadius);
179 else if (fabs(
aMX.
fx)<=fNearNull && fabs(
aMX.
fz)<=fNearNull &&
180 fabs(
aMY.
fy)<=fNearNull && fabs(
aMY.
fz)<=fNearNull)
182 rEx=fabs(
aMY.
fx*fRadius);
183 rEy=fabs(
aMX.
fy*fRadius);
186 else if (fabs(fMXAbs-fMYAbs)<=fNearNull &&
187 fabs(
aMX.
fz)<=fNearNull && fabs(
aMY.
fz)<=fNearNull)
189 rEx=rEy=fabs(((fMXAbs+fMYAbs)/2)*fRadius);
197 double fex,fey,
scale;
201 scale = (fex+fey)/2.0;
205 aLineInfo.SetStyle( aDXFLineInfo.
eStyle );
206 aLineInfo.SetWidth( 0 );
207 aLineInfo.SetDashCount(
static_cast< sal_uInt16
>( aDXFLineInfo.
nDashCount ) );
209 aLineInfo.SetDotCount(
static_cast< sal_uInt16
>( aDXFLineInfo.
nDotCount ) );
213 if ( aLineInfo.GetDashCount() > 0 && aLineInfo.GetDashLen() == 0 )
214 aLineInfo.SetDashLen(1);
216 if ( aLineInfo.GetDotCount() > 0 && aLineInfo.GetDotLen() == 0 )
217 aLineInfo.SetDotLen(1);
double SProd(const DXFVector &rV) const
DXFVector(double fX=0.0, double fY=0.0, double fZ=0.0)
void setX(tools::Long nX)
void setY(tools::Long nY)
constexpr double rad2deg(double v)
constexpr double deg2rad(double v)