1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
19 #ifndef com_sun_star_chart2_XTransformation_idl
20 #define com_sun_star_chart2_XTransformation_idl
22 #include
<com
/sun
/star
/uno
/XInterface.idl
>
23 #include
<com
/sun
/star
/lang
/IllegalArgumentException.idl
>
36 //... provide help for creating the right transformation
37 // ... access to source and destination coordinate system ?
39 /** allows the transformation of numeric values from one
40 coordinate-system into an other. Values may be transformed using
43 interface XTransformation
: ::com
::sun
::star
::uno
::XInterface
45 /** transforms the given input data tuple, given in the source
46 coordinate system, according to the internal transformation
47 rules, into a tuple of transformed coordinates in the
48 destination coordinate system.
50 <p>Note that both coordinate systems may have different
51 dimensions, e.g., if a transformation does simply a projection
52 into a lower-dimensional space.</p>
54 @param aValues a source tuple of data that is to be
55 transformed. The length of this sequence must be
56 equivalent to the dimension of the source coordinate
59 @return the transformed data tuple. The length of this
60 sequence is equal to the dimension of the output
63 @throws ::com::sun::star::lang::IllegalArgumentException
64 if the dimension of the input vector is not equal to the
65 dimension given in getSourceDimension().
67 sequence
< double > transform
( [in] sequence
< double > aValues
)
68 raises
( ::com
::sun
::star
::lang
::IllegalArgumentException
);
70 /** the dimension of the input coordinate sequence that is to be
71 transformed by the transform() method.
73 long getSourceDimension
();
75 /** the dimension of the output coordinate sequence that is the
76 result of the transform() method.
78 long getTargetDimension
();
89 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */