Kaydet (Commit) a7fa0389 authored tarafından Ivo Hinkelmann's avatar Ivo Hinkelmann

INTEGRATION: CWS aw024 (1.4.140); FILE MERGED

2006/11/10 03:01:19 aw 1.4.140.11: RESYNC: (1.12-1.13); FILE MERGED
2006/10/27 12:13:55 aw 1.4.140.10: #i39528# ::basegfx -> basegfx adaption
2006/09/21 18:10:59 aw 1.4.140.9: RESYNC: (1.11-1.12); FILE MERGED
2006/08/03 15:10:02 aw 1.4.140.8: RESYNC: (1.10-1.11); FILE MERGED
2006/01/26 21:37:09 aw 1.4.140.7: RESYNC: (1.9-1.10); FILE MERGED
2005/09/18 01:55:28 aw 1.4.140.6: RESYNC: (1.8-1.9); FILE MERGED
2005/07/22 10:46:14 aw 1.4.140.5: RESYNC: (1.7-1.8); FILE MERGED
2005/05/13 15:42:43 aw 1.4.140.4: RESYNC: (1.6-1.7); FILE MERGED
2005/04/26 15:04:04 aw 1.4.140.3: #i39528#
2005/03/23 23:48:06 aw 1.4.140.2: RESYNC: (1.4-1.6); FILE MERGED
2004/12/23 16:52:28 aw 1.4.140.1: #i39525
üst 39ac7601
...@@ -4,9 +4,9 @@ ...@@ -4,9 +4,9 @@
* *
* $RCSfile: EnhancedCustomShapeEngine.cxx,v $ * $RCSfile: EnhancedCustomShapeEngine.cxx,v $
* *
* $Revision: 1.13 $ * $Revision: 1.14 $
* *
* last change: $Author: obo $ $Date: 2006-10-12 12:02:05 $ * last change: $Author: ihi $ $Date: 2006-11-14 13:14:07 $
* *
* The Contents of this file are made available subject to * The Contents of this file are made available subject to
* the terms of GNU Lesser General Public License Version 2.1. * the terms of GNU Lesser General Public License Version 2.1.
...@@ -103,6 +103,10 @@ ...@@ -103,6 +103,10 @@
#endif #endif
#include <uno/mapping.hxx> #include <uno/mapping.hxx>
#ifndef _BGFX_POLYPOLYGON_B2DPOLYGONTOOLS_HXX
#include <basegfx/polygon/b2dpolypolygontools.hxx>
#endif
// --------------------------- // ---------------------------
// - EnhancedCustomShapeEngine - // - EnhancedCustomShapeEngine -
// --------------------------- // ---------------------------
...@@ -431,36 +435,45 @@ com::sun::star::drawing::PolyPolygonBezierCoords SAL_CALL EnhancedCustomShapeEng ...@@ -431,36 +435,45 @@ com::sun::star::drawing::PolyPolygonBezierCoords SAL_CALL EnhancedCustomShapeEng
pObj->NbcMirror( aLeft, aRight ); pObj->NbcMirror( aLeft, aRight );
} }
XPolyPolygon aXPolyPoly; basegfx::B2DPolyPolygon aPolyPolygon;
SdrObjListIter aIter( *pObj, IM_DEEPWITHGROUPS ); SdrObjListIter aIter( *pObj, IM_DEEPWITHGROUPS );
while ( aIter.IsMore() ) while ( aIter.IsMore() )
{ {
SdrObject* pNewObj = NULL; SdrObject* pNewObj = NULL;
const XPolyPolygon* pPP = NULL; basegfx::B2DPolyPolygon aPP;
const SdrObject* pNext = aIter.Next(); const SdrObject* pNext = aIter.Next();
if ( pNext->ISA( SdrPathObj ) ) if ( pNext->ISA( SdrPathObj ) )
pPP = &((SdrPathObj*)pNext)->GetPathPoly(); {
aPP = ((SdrPathObj*)pNext)->GetPathPoly();
}
else else
{ {
pNewObj = pNext->ConvertToPolyObj( FALSE, FALSE ); pNewObj = pNext->ConvertToPolyObj( FALSE, FALSE );
SdrPathObj* pPath = PTR_CAST( SdrPathObj, pNewObj ); SdrPathObj* pPath = PTR_CAST( SdrPathObj, pNewObj );
if ( pPath ) if ( pPath )
pPP = &pPath->GetPathPoly(); aPP = pPath->GetPathPoly();
} }
if ( pPP )
if ( aPP.count() )
{ {
sal_uInt16 i; if(aPP.areControlVectorsUsed())
for ( i = 0; i < pPP->Count(); i++ ) {
aXPolyPoly.Insert( XOutCreatePolygon( pPP->GetObject( i )), XPOLYPOLY_APPEND ); aPolyPolygon.append(basegfx::tools::adaptiveSubdivideByAngle(aPP));
//BFS09 aXPolyPoly.Insert( XOutCreatePolygon( pPP->GetObject( i ), NULL, 100 ), XPOLYPOLY_APPEND ); }
else
{
aPolyPolygon.append(aPP);
}
} }
delete pNewObj; delete pNewObj;
} }
delete pObj; delete pObj;
SvxPolyPolygonToPolyPolygonBezierCoords( aXPolyPoly, aPolyPolygonBezierCoords ); SvxConvertB2DPolyPolygonToPolyPolygonBezier( aPolyPolygon, aPolyPolygonBezierCoords );
} }
} }
return aPolyPolygonBezierCoords; return aPolyPolygonBezierCoords;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment