87 lines
3.5 KiB
Text
87 lines
3.5 KiB
Text
/*************************************************************************
|
|
*
|
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
*
|
|
* Copyright 2000, 2010 Oracle and/or its affiliates.
|
|
*
|
|
* OpenOffice.org - a multi-platform office productivity suite
|
|
*
|
|
* This file is part of OpenOffice.org.
|
|
*
|
|
* OpenOffice.org is free software: you can redistribute it and/or modify
|
|
* it under the terms of the GNU Lesser General Public License version 3
|
|
* only, as published by the Free Software Foundation.
|
|
*
|
|
* OpenOffice.org is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU Lesser General Public License version 3 for more details
|
|
* (a copy is included in the LICENSE file that accompanied this code).
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public License
|
|
* version 3 along with OpenOffice.org. If not, see
|
|
* <http://www.openoffice.org/license.html>
|
|
* for a copy of the LGPLv3 License.
|
|
*
|
|
************************************************************************/
|
|
#ifndef __com_sun_star_graphic_XPrimitive2D_idl__
|
|
#define __com_sun_star_graphic_XPrimitive2D_idl__
|
|
|
|
#include <com/sun/star/uno/XInterface.idl>
|
|
#include <com/sun/star/beans/PropertyValue.idl>
|
|
#include <com/sun/star/geometry/RealRectangle2D.idl>
|
|
|
|
module com { module sun { module star { module graphic {
|
|
|
|
/** XPrimitive2D interface
|
|
|
|
This is the basic interface for 2D graphic primitives. They need to be able
|
|
- to provide a decomposition consisting of simpler graphic primitives
|
|
- to provide a 2D bound rectangle as a 2D range
|
|
*/
|
|
interface XPrimitive2D : ::com::sun::star::uno::XInterface
|
|
{
|
|
/** Retrieve decomposed list of simpler primitives
|
|
|
|
@param aViewParameters
|
|
2D View-specific parameter set. The defined but not mandatory
|
|
parameters include:
|
|
|
|
::com::sun::star::geometry::AffineMatrix2D Transformation
|
|
|
|
A transformation matrix which maps between world coordinates (which
|
|
is equal to object's local coordinates) to view coordinates. If not
|
|
defined, an empty transformation is implied.
|
|
|
|
::com::sun::star::geometry::RealRectangle2D Viewport
|
|
|
|
Defines the visible part of the view in world coordinates. May be used
|
|
to optimize decompositions, e.g. for 3D scenes only the visible part
|
|
needs to be created. If not given, an empty Viewport is implied which
|
|
means all is visible.
|
|
|
|
double Time
|
|
|
|
Defines the point in time for which the geometry is defined. This may
|
|
lead to varied results for animated objects. This value is defined in the
|
|
range [0.0 .. n[, negative values are not allowed. If not given, a value of
|
|
0.0 is implied.
|
|
*/
|
|
sequence< XPrimitive2D > getDecomposition( [in] sequence< ::com::sun::star::beans::PropertyValue > aViewParameters );
|
|
|
|
/** Retrieve bound rect of primitive
|
|
|
|
This method calculates the actual bound rect of the area in
|
|
<em>world coordinates<em>. Note that for view-dependent primitives,
|
|
the necessary pixel adjustments are taken into account. For that reason
|
|
the ViewParameters need to be given.
|
|
|
|
@param aViewParameters
|
|
2D View-specific parameter set, same as in getDecomposition.
|
|
*/
|
|
::com::sun::star::geometry::RealRectangle2D getRange( [in] sequence< ::com::sun::star::beans::PropertyValue > aViewParameters );
|
|
};
|
|
|
|
}; }; }; };
|
|
|
|
#endif
|