Revision 253
org.gvsig.expressionfield/tags/org.gvsig.expressionfield-2.0.45/pom.xml | ||
---|---|---|
1 |
<?xml version="1.0" encoding="UTF-8"?> |
|
2 |
|
|
3 |
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
|
4 |
|
|
5 |
<modelVersion>4.0.0</modelVersion> |
|
6 |
<artifactId>org.gvsig.expressionfield</artifactId> |
|
7 |
<name>${project.artifactId}</name> |
|
8 |
<version>2.0.45</version> |
|
9 |
<description>Field calculator (Expression from assistant or from text file)</description> |
|
10 |
|
|
11 |
<parent> |
|
12 |
<groupId>org.gvsig</groupId> |
|
13 |
<artifactId>org.gvsig.desktop</artifactId> |
|
14 |
<version>2.0.169</version> |
|
15 |
</parent> |
|
16 |
|
|
17 |
<url>https://devel.gvsig.org/redmine/projects/gvsig-expression-field</url> |
|
18 |
|
|
19 |
<scm> |
|
20 |
<connection>scm:svn:https://devel.gvsig.org/svn/gvsig-expression-field/org.gvsig.expressionfield/tags/org.gvsig.expressionfield-2.0.45</connection> |
|
21 |
<developerConnection>scm:svn:https://devel.gvsig.org/svn/gvsig-expression-field/org.gvsig.expressionfield/tags/org.gvsig.expressionfield-2.0.45</developerConnection> |
|
22 |
<url>scm:svn:https://devel.gvsig.org/svn/gvsig-expression-field/org.gvsig.expressionfield/tags/org.gvsig.expressionfield-2.0.45</url> |
|
23 |
</scm> |
|
24 |
|
|
25 |
<repositories> |
|
26 |
<repository> |
|
27 |
<id>gvsig-public-http-repository</id> |
|
28 |
<name>gvSIG maven public HTTP repository</name> |
|
29 |
<url>http://devel.gvsig.org/m2repo/j2se</url> |
|
30 |
<releases> |
|
31 |
<enabled>true</enabled> |
|
32 |
<updatePolicy>daily</updatePolicy> |
|
33 |
<checksumPolicy>warn</checksumPolicy> |
|
34 |
</releases> |
|
35 |
<snapshots> |
|
36 |
<enabled>true</enabled> |
|
37 |
<updatePolicy>daily</updatePolicy> |
|
38 |
<checksumPolicy>warn</checksumPolicy> |
|
39 |
</snapshots> |
|
40 |
</repository> |
|
41 |
</repositories> |
|
42 |
|
|
43 |
<dependencyManagement> |
|
44 |
<dependencies> |
|
45 |
<!-- Adding this dependency because this project is using a jython version |
|
46 |
different to the version defined by the parent pom --> |
|
47 |
<dependency> |
|
48 |
<groupId>org.python</groupId> |
|
49 |
<artifactId>jython</artifactId> |
|
50 |
<version>2.2.1</version> |
|
51 |
</dependency> |
|
52 |
</dependencies> |
|
53 |
</dependencyManagement> |
|
54 |
|
|
55 |
<dependencies> |
|
56 |
<dependency> |
|
57 |
<groupId>org.gvsig</groupId> |
|
58 |
<artifactId>org.gvsig.app.mainplugin</artifactId> |
|
59 |
<scope>compile</scope> |
|
60 |
</dependency> |
|
61 |
<dependency> |
|
62 |
<groupId>org.gvsig</groupId> |
|
63 |
<artifactId>org.gvsig.app.document.table.app.mainplugin</artifactId> |
|
64 |
<scope>compile</scope> |
|
65 |
</dependency> |
|
66 |
<dependency> |
|
67 |
<groupId>bsf</groupId> |
|
68 |
<artifactId>bsf</artifactId> |
|
69 |
<scope>compile</scope> |
|
70 |
</dependency> |
|
71 |
|
|
72 |
<dependency> |
|
73 |
<groupId>bsh</groupId> |
|
74 |
<artifactId>bsh</artifactId> |
|
75 |
<scope>compile</scope> |
|
76 |
</dependency> |
|
77 |
|
|
78 |
<dependency> |
|
79 |
<groupId>org.gvsig</groupId> |
|
80 |
<artifactId>org.gvsig.about.api</artifactId> |
|
81 |
<scope>compile</scope> |
|
82 |
</dependency> |
|
83 |
<dependency> |
|
84 |
<groupId>org.gvsig</groupId> |
|
85 |
<artifactId>org.gvsig.andami</artifactId> |
|
86 |
<scope>compile</scope> |
|
87 |
</dependency> |
|
88 |
<dependency> |
|
89 |
<groupId>org.gvsig</groupId> |
|
90 |
<artifactId>org.gvsig.fmap.dal.api</artifactId> |
|
91 |
<scope>compile</scope> |
|
92 |
</dependency> |
|
93 |
<dependency> |
|
94 |
<groupId>org.gvsig</groupId> |
|
95 |
<artifactId>org.gvsig.fmap.mapcontext.api</artifactId> |
|
96 |
<scope>compile</scope> |
|
97 |
</dependency> |
|
98 |
<dependency> |
|
99 |
<groupId>org.gvsig</groupId> |
|
100 |
<artifactId>org.gvsig.tools.lib</artifactId> |
|
101 |
<scope>compile</scope> |
|
102 |
</dependency> |
|
103 |
<dependency> |
|
104 |
<groupId>org.gvsig</groupId> |
|
105 |
<artifactId>org.gvsig.tools.swing.api</artifactId> |
|
106 |
<scope>compile</scope> |
|
107 |
</dependency> |
|
108 |
<dependency> |
|
109 |
<groupId>org.gvsig</groupId> |
|
110 |
<artifactId>org.gvsig.fmap.geometry.api</artifactId> |
|
111 |
<scope>compile</scope> |
|
112 |
</dependency> |
|
113 |
<dependency> |
|
114 |
<groupId>org.gvsig</groupId> |
|
115 |
<artifactId>org.gvsig.metadata.lib.basic.api</artifactId> |
|
116 |
<scope>compile</scope> |
|
117 |
</dependency> |
|
118 |
<dependency> |
|
119 |
<groupId>org.gvsig</groupId> |
|
120 |
<artifactId>org.gvsig.ui</artifactId> |
|
121 |
<scope>compile</scope> |
|
122 |
</dependency> |
|
123 |
<dependency> |
|
124 |
<groupId>org.gvsig</groupId> |
|
125 |
<artifactId>org.gvsig.projection.api</artifactId> |
|
126 |
<scope>compile</scope> |
|
127 |
</dependency> |
|
128 |
<dependency> |
|
129 |
<groupId>org.gvsig</groupId> |
|
130 |
<artifactId>org.gvsig.fmap.control</artifactId> |
|
131 |
<scope>compile</scope> |
|
132 |
</dependency> |
|
133 |
<dependency> |
|
134 |
<groupId>org.gvsig</groupId> |
|
135 |
<artifactId>org.gvsig.utils</artifactId> |
|
136 |
<scope>compile</scope> |
|
137 |
</dependency> |
|
138 |
<dependency> |
|
139 |
<groupId>org.gvsig</groupId> |
|
140 |
<artifactId>org.gvsig.timesupport.lib.api</artifactId> |
|
141 |
<scope>compile</scope> |
|
142 |
</dependency> |
|
143 |
<dependency> |
|
144 |
<groupId>com.fifesoft</groupId> |
|
145 |
<artifactId>rsyntaxtextarea</artifactId> |
|
146 |
<scope>compile</scope> |
|
147 |
</dependency> |
|
148 |
<dependency> |
|
149 |
<groupId>org.python</groupId> |
|
150 |
<artifactId>jython</artifactId> |
|
151 |
<scope>runtime</scope> |
|
152 |
</dependency> |
|
153 |
</dependencies> |
|
154 |
|
|
155 |
|
|
156 |
<build> |
|
157 |
|
|
158 |
<plugins> |
|
159 |
<plugin> |
|
160 |
<groupId>org.apache.maven.plugins</groupId> |
|
161 |
<artifactId>maven-surefire-plugin</artifactId> |
|
162 |
<configuration> |
|
163 |
<skipTests>true</skipTests> |
|
164 |
</configuration> |
|
165 |
</plugin> |
|
166 |
|
|
167 |
<plugin> |
|
168 |
<artifactId>maven-release-plugin</artifactId> |
|
169 |
<version>2.0</version> |
|
170 |
<configuration> |
|
171 |
<tagBase>https://devel.gvsig.org/svn/gvsig-expression-field/org.gvsig.expressionfield/tags</tagBase> |
|
172 |
</configuration> |
|
173 |
</plugin> |
|
174 |
|
|
175 |
</plugins> |
|
176 |
|
|
177 |
</build> |
|
178 |
|
|
179 |
|
|
180 |
<properties> |
|
181 |
<gvsig.package.info.name>Tools: Field calculator</gvsig.package.info.name> |
|
182 |
<gvsig.package.info.dependencies>required: org.gvsig.app.document.table.app.mainplugin -ge 2</gvsig.package.info.dependencies> |
|
183 |
<gvsig.package.info.javaVM>j1_6</gvsig.package.info.javaVM> |
|
184 |
<gvsig.package.info.state>testing</gvsig.package.info.state> |
|
185 |
<gvsig.package.info.official>true</gvsig.package.info.official> |
|
186 |
<!-- alpha-devel --> |
|
187 |
<gvsig.package.info.categories>Table</gvsig.package.info.categories> |
|
188 |
<gvsig.package.info.poolURL>https://devel.gvsig.org/download/projects/gvsig-expression-field/pool</gvsig.package.info.poolURL> |
|
189 |
|
|
190 |
</properties> |
|
191 |
</project> |
org.gvsig.expressionfield/tags/org.gvsig.expressionfield-2.0.45/buildNumber.properties | ||
---|---|---|
1 |
#Tue Feb 14 17:39:30 CET 2017 |
|
2 |
buildNumber=2123 |
org.gvsig.expressionfield/tags/org.gvsig.expressionfield-2.0.45/src/test/java/org/gvsig/expressionfield/AllTests.java | ||
---|---|---|
1 |
package org.gvsig.expressionfield; |
|
2 |
|
|
3 |
import junit.framework.Test; |
|
4 |
import junit.framework.TestSuite; |
|
5 |
|
|
6 |
public class AllTests { |
|
7 |
|
|
8 |
public static Test suite() { |
|
9 |
TestSuite suite = new TestSuite( |
|
10 |
"Test for com.iver.cit.gvsig.expressionField"); |
|
11 |
//$JUnit-BEGIN$ |
|
12 |
|
|
13 |
//$JUnit-END$ |
|
14 |
return suite; |
|
15 |
} |
|
16 |
|
|
17 |
} |
org.gvsig.expressionfield/tags/org.gvsig.expressionfield-2.0.45/src/main/assembly/gvsig-plugin-package.xml | ||
---|---|---|
1 |
<!-- |
|
2 |
|
|
3 |
gvSIG. Desktop Geographic Information System. |
|
4 |
|
|
5 |
Copyright (C) 2007-2013 gvSIG Association. |
|
6 |
|
|
7 |
This program is free software; you can redistribute it and/or |
|
8 |
modify it under the terms of the GNU General Public License |
|
9 |
as published by the Free Software Foundation; either version 3 |
|
10 |
of the License, or (at your option) any later version. |
|
11 |
|
|
12 |
This program is distributed in the hope that it will be useful, |
|
13 |
but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
14 |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
15 |
GNU General Public License for more details. |
|
16 |
|
|
17 |
You should have received a copy of the GNU General Public License |
|
18 |
along with this program; if not, write to the Free Software |
|
19 |
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, |
|
20 |
MA 02110-1301, USA. |
|
21 |
|
|
22 |
For any additional information, do not hesitate to contact us |
|
23 |
at info AT gvsig.com, or visit our website www.gvsig.com. |
|
24 |
|
|
25 |
--> |
|
26 |
<assembly> |
|
27 |
<id>gvsig-plugin-package</id> |
|
28 |
<formats> |
|
29 |
<format>zip</format> |
|
30 |
</formats> |
|
31 |
<baseDirectory>${project.artifactId}</baseDirectory> |
|
32 |
<includeBaseDirectory>true</includeBaseDirectory> |
|
33 |
<files> |
|
34 |
<file> |
|
35 |
<source>target/${project.artifactId}-${project.version}.jar</source> |
|
36 |
<outputDirectory>lib</outputDirectory> |
|
37 |
</file> |
|
38 |
<file> |
|
39 |
<source>target/package.info</source> |
|
40 |
</file> |
|
41 |
</files> |
|
42 |
|
|
43 |
<fileSets> |
|
44 |
<fileSet> |
|
45 |
<directory>src/main/resources-plugin</directory> |
|
46 |
<outputDirectory>.</outputDirectory> |
|
47 |
</fileSet> |
|
48 |
</fileSets> |
|
49 |
|
|
50 |
<dependencySets> |
|
51 |
<dependencySet> |
|
52 |
<useProjectArtifact>false</useProjectArtifact> |
|
53 |
<useTransitiveDependencies>false</useTransitiveDependencies> |
|
54 |
<outputDirectory>lib</outputDirectory> |
|
55 |
<includes> |
|
56 |
<include>bsf:bsf</include> |
|
57 |
<include>org.python:jython</include> |
|
58 |
<include>com.fifesoft:rsyntaxtextarea</include> |
|
59 |
</includes> |
|
60 |
</dependencySet> |
|
61 |
</dependencySets> |
|
62 |
|
|
63 |
</assembly> |
|
64 |
|
org.gvsig.expressionfield/tags/org.gvsig.expressionfield-2.0.45/src/main/java/org/gvsig/expressionfield/gui/FieldExpressionPage.java | ||
---|---|---|
1 |
/******************************************************************************* |
|
2 |
* |
|
3 |
* gvSIG. Desktop Geographic Information System. |
|
4 |
* |
|
5 |
* Copyright (C) 2007-2013 gvSIG Association. |
|
6 |
* |
|
7 |
* This program is free software; you can redistribute it and/or |
|
8 |
* modify it under the terms of the GNU General Public License |
|
9 |
* as published by the Free Software Foundation; either version 3 |
|
10 |
* of the License, or (at your option) any later version. |
|
11 |
* |
|
12 |
* This program is distributed in the hope that it will be useful, |
|
13 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
14 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
15 |
* GNU General Public License for more details. |
|
16 |
* |
|
17 |
* You should have received a copy of the GNU General Public License |
|
18 |
* along with this program; if not, write to the Free Software |
|
19 |
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, |
|
20 |
* MA 02110-1301, USA. |
|
21 |
* |
|
22 |
* For any additional information, do not hesitate to contact us |
|
23 |
* at info AT gvsig.com, or visit our website www.gvsig.com. |
|
24 |
* |
|
25 |
*******************************************************************************/ |
|
26 |
package org.gvsig.expressionfield.gui; |
|
27 |
|
|
28 |
import java.awt.event.MouseEvent; |
|
29 |
import java.awt.event.MouseListener; |
|
30 |
import java.util.prefs.Preferences; |
|
31 |
|
|
32 |
import javax.swing.ImageIcon; |
|
33 |
import javax.swing.JCheckBox; |
|
34 |
import javax.swing.JPanel; |
|
35 |
import javax.swing.JTextArea; |
|
36 |
import javax.swing.JTextField; |
|
37 |
|
|
38 |
import org.gvsig.andami.IconThemeHelper; |
|
39 |
import org.gvsig.andami.PluginServices; |
|
40 |
import org.gvsig.andami.preferences.AbstractPreferencePage; |
|
41 |
import org.gvsig.andami.preferences.StoreException; |
|
42 |
|
|
43 |
|
|
44 |
/** |
|
45 |
* @author Vicente Caballero Navarro |
|
46 |
*/ |
|
47 |
public class FieldExpressionPage extends AbstractPreferencePage { |
|
48 |
private static Preferences prefs = Preferences.userRoot().node( "fieldExpressionOptions" ); |
|
49 |
private JTextArea jTextArea = null; |
|
50 |
private JTextField txtLimit; |
|
51 |
private JCheckBox ckLimit=null; |
|
52 |
private ImageIcon icon; |
|
53 |
|
|
54 |
public FieldExpressionPage() { |
|
55 |
super(); |
|
56 |
|
|
57 |
icon = IconThemeHelper.getImageIcon("expression-field-preferences"); |
|
58 |
|
|
59 |
addComponent(getJTextArea()); |
|
60 |
|
|
61 |
addComponent(PluginServices.getText(this, "limit_rows_in_memory") + ":", |
|
62 |
txtLimit = new JTextField("", 15)); |
|
63 |
addComponent(ckLimit = new JCheckBox(PluginServices.getText(this, "without_limit"))); |
|
64 |
ckLimit.addMouseListener(new MouseListener() { |
|
65 |
public void mouseClicked(MouseEvent e) { |
|
66 |
if (ckLimit.isSelected()) { |
|
67 |
txtLimit.setText(PluginServices.getText(this, "without_limit")); |
|
68 |
}else { |
|
69 |
if (txtLimit.getText().equals(PluginServices.getText(this, "without_limit"))) |
|
70 |
txtLimit.setText("500000"); |
|
71 |
} |
|
72 |
|
|
73 |
} |
|
74 |
public void mouseEntered(MouseEvent e) { |
|
75 |
} |
|
76 |
public void mouseExited(MouseEvent e) { |
|
77 |
} |
|
78 |
public void mousePressed(MouseEvent e) { |
|
79 |
} |
|
80 |
public void mouseReleased(MouseEvent e) { |
|
81 |
} |
|
82 |
|
|
83 |
}); |
|
84 |
} |
|
85 |
|
|
86 |
public void initializeValues() { |
|
87 |
int limit = prefs.getInt("limit_rows_in_memory",-1); |
|
88 |
if (limit==-1) { |
|
89 |
ckLimit.setSelected(true); |
|
90 |
txtLimit.setText(PluginServices.getText(this,"without_limit")); |
|
91 |
}else { |
|
92 |
ckLimit.setSelected(false); |
|
93 |
txtLimit.setText(String.valueOf(limit)); |
|
94 |
} |
|
95 |
} |
|
96 |
|
|
97 |
public String getID() { |
|
98 |
return this.getClass().getName(); |
|
99 |
} |
|
100 |
|
|
101 |
public String getTitle() { |
|
102 |
return PluginServices.getText(this, "limit_rows_in_memory"); |
|
103 |
} |
|
104 |
|
|
105 |
public JPanel getPanel() { |
|
106 |
return this; |
|
107 |
} |
|
108 |
|
|
109 |
public void storeValues() throws StoreException { |
|
110 |
int limit; |
|
111 |
try{ |
|
112 |
if (ckLimit.isSelected()) { |
|
113 |
limit=-1; |
|
114 |
}else { |
|
115 |
// if (txtLimit.getText().equals(PluginServices.getText(this,"without_limit"))) { |
|
116 |
// limit=-1; |
|
117 |
// }else { |
|
118 |
limit=Integer.parseInt(txtLimit.getText()); |
|
119 |
} |
|
120 |
}catch (Exception e) { |
|
121 |
throw new StoreException(PluginServices.getText(this,"limit_rows_in_memory")+PluginServices.getText(this,"error")); |
|
122 |
} |
|
123 |
prefs.putInt("limit_rows_in_memory", limit); |
|
124 |
} |
|
125 |
|
|
126 |
public void initializeDefaults() { |
|
127 |
int limit=prefs.getInt("limit_rows_in_memory",-1); |
|
128 |
if (limit==-1) { |
|
129 |
ckLimit.setSelected(true); |
|
130 |
txtLimit.setText(PluginServices.getText(this,"without_limit")); |
|
131 |
}else { |
|
132 |
ckLimit.setSelected(false); |
|
133 |
txtLimit.setText(String.valueOf(limit)); |
|
134 |
} |
|
135 |
} |
|
136 |
|
|
137 |
public ImageIcon getIcon() { |
|
138 |
return icon; |
|
139 |
} |
|
140 |
/** |
|
141 |
* This method initializes jTextArea |
|
142 |
* |
|
143 |
* @return javax.swing.JTextArea |
|
144 |
*/ |
|
145 |
private JTextArea getJTextArea() { |
|
146 |
if (jTextArea == null) { |
|
147 |
jTextArea = new JTextArea(); |
|
148 |
jTextArea.setBounds(new java.awt.Rectangle(13,7,285,57)); |
|
149 |
jTextArea.setForeground(java.awt.Color.black); |
|
150 |
jTextArea.setBackground(java.awt.SystemColor.control); |
|
151 |
jTextArea.setRows(3); |
|
152 |
jTextArea.setWrapStyleWord(true); |
|
153 |
jTextArea.setLineWrap(true); |
|
154 |
jTextArea.setEditable(false); |
|
155 |
jTextArea.setText(PluginServices.getText(this,"specifies_the_limit_rows_in_memory_when_the_program_eval_the_expression")); |
|
156 |
} |
|
157 |
return jTextArea; |
|
158 |
} |
|
159 |
|
|
160 |
public boolean isValueChanged() { |
|
161 |
return super.hasChanged(); |
|
162 |
} |
|
163 |
|
|
164 |
public void setChangesApplied() { |
|
165 |
setChanged(false); |
|
166 |
} |
|
167 |
} |
org.gvsig.expressionfield/tags/org.gvsig.expressionfield-2.0.45/src/main/java/org/gvsig/expressionfield/project/documents/table/GraphicOperator.java | ||
---|---|---|
1 |
/******************************************************************************* |
|
2 |
* |
|
3 |
* gvSIG. Desktop Geographic Information System. |
|
4 |
* |
|
5 |
* Copyright (C) 2007-2013 gvSIG Association. |
|
6 |
* |
|
7 |
* This program is free software; you can redistribute it and/or |
|
8 |
* modify it under the terms of the GNU General Public License |
|
9 |
* as published by the Free Software Foundation; either version 3 |
|
10 |
* of the License, or (at your option) any later version. |
|
11 |
* |
|
12 |
* This program is distributed in the hope that it will be useful, |
|
13 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
14 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
15 |
* GNU General Public License for more details. |
|
16 |
* |
|
17 |
* You should have received a copy of the GNU General Public License |
|
18 |
* along with this program; if not, write to the Free Software |
|
19 |
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, |
|
20 |
* MA 02110-1301, USA. |
|
21 |
* |
|
22 |
* For any additional information, do not hesitate to contact us |
|
23 |
* at info AT gvsig.com, or visit our website www.gvsig.com. |
|
24 |
* |
|
25 |
*******************************************************************************/ |
|
26 |
package org.gvsig.expressionfield.project.documents.table; |
|
27 |
|
|
28 |
import java.awt.geom.PathIterator; |
|
29 |
import java.util.ArrayList; |
|
30 |
|
|
31 |
import org.gvsig.fmap.geom.Geometry; |
|
32 |
import org.gvsig.fmap.geom.GeometryLocator; |
|
33 |
import org.gvsig.fmap.geom.GeometryManager; |
|
34 |
import org.gvsig.fmap.mapcontext.layers.vectorial.FLyrVect; |
|
35 |
|
|
36 |
/** |
|
37 |
* @author Vicente Caballero Navarro |
|
38 |
*/ |
|
39 |
public abstract class GraphicOperator extends AbstractOperator{ |
|
40 |
private FLyrVect lv=null; |
|
41 |
private static GeometryManager geomManager = GeometryLocator.getGeometryManager(); |
|
42 |
|
|
43 |
public void setLayer(FLyrVect lv) { |
|
44 |
this.lv=lv; |
|
45 |
} |
|
46 |
public FLyrVect getLayer() { |
|
47 |
return lv; |
|
48 |
} |
|
49 |
public abstract double process(org.gvsig.fmap.dal.feature.Feature feature); |
|
50 |
protected ArrayList getXY(Geometry geometry) { |
|
51 |
ArrayList xs = new ArrayList(); |
|
52 |
ArrayList ys = new ArrayList(); |
|
53 |
ArrayList parts=new ArrayList(); |
|
54 |
double[] theData = new double[6]; |
|
55 |
|
|
56 |
//double[] aux = new double[6]; |
|
57 |
PathIterator theIterator; |
|
58 |
int theType; |
|
59 |
int numParts = 0; |
|
60 |
theIterator = geometry.getPathIterator(null, geomManager.getFlatness()); //, flatness); |
|
61 |
boolean isClosed = false; |
|
62 |
while (!theIterator.isDone()) { |
|
63 |
theType = theIterator.currentSegment(theData); |
|
64 |
|
|
65 |
switch (theType) { |
|
66 |
case PathIterator.SEG_MOVETO: |
|
67 |
if (numParts==0){ |
|
68 |
xs.add(new Double(theData[0])); |
|
69 |
ys.add(new Double(theData[1])); |
|
70 |
}else{ |
|
71 |
if (!isClosed){ |
|
72 |
Double[] x = (Double[]) xs.toArray(new Double[0]); |
|
73 |
Double[] y = (Double[]) ys.toArray(new Double[0]); |
|
74 |
parts.add(new Double[][] { x, y }); |
|
75 |
xs.clear(); |
|
76 |
ys.clear(); |
|
77 |
} |
|
78 |
xs.add(new Double(theData[0])); |
|
79 |
ys.add(new Double(theData[1])); |
|
80 |
} |
|
81 |
numParts++; |
|
82 |
isClosed = false; |
|
83 |
break; |
|
84 |
case PathIterator.SEG_LINETO: |
|
85 |
isClosed=false; |
|
86 |
xs.add(new Double(theData[0])); |
|
87 |
ys.add(new Double(theData[1])); |
|
88 |
break; |
|
89 |
case PathIterator.SEG_CLOSE: |
|
90 |
isClosed=true; |
|
91 |
xs.add(new Double(theData[0])); |
|
92 |
ys.add(new Double(theData[1])); |
|
93 |
Double[] x = (Double[]) xs.toArray(new Double[0]); |
|
94 |
Double[] y = (Double[]) ys.toArray(new Double[0]); |
|
95 |
parts.add(new Double[][] { x, y }); |
|
96 |
xs.clear(); |
|
97 |
ys.clear(); |
|
98 |
break; |
|
99 |
} //end switch |
|
100 |
|
|
101 |
theIterator.next(); |
|
102 |
} //end while loop |
|
103 |
|
|
104 |
if (!isClosed){ |
|
105 |
isClosed=true; |
|
106 |
xs.add(new Double(theData[0])); |
|
107 |
ys.add(new Double(theData[1])); |
|
108 |
Double[] x = (Double[]) xs.toArray(new Double[0]); |
|
109 |
Double[] y = (Double[]) ys.toArray(new Double[0]); |
|
110 |
parts.add(new Double[][] { x, y }); |
|
111 |
xs.clear(); |
|
112 |
ys.clear(); |
|
113 |
} |
|
114 |
return parts; |
|
115 |
|
|
116 |
} |
|
117 |
|
|
118 |
} |
org.gvsig.expressionfield/tags/org.gvsig.expressionfield-2.0.45/src/main/java/org/gvsig/expressionfield/project/documents/table/operators/IsNumber.java | ||
---|---|---|
1 |
/******************************************************************************* |
|
2 |
* |
|
3 |
* gvSIG. Desktop Geographic Information System. |
|
4 |
* |
|
5 |
* Copyright (C) 2007-2013 gvSIG Association. |
|
6 |
* |
|
7 |
* This program is free software; you can redistribute it and/or |
|
8 |
* modify it under the terms of the GNU General Public License |
|
9 |
* as published by the Free Software Foundation; either version 3 |
|
10 |
* of the License, or (at your option) any later version. |
|
11 |
* |
|
12 |
* This program is distributed in the hope that it will be useful, |
|
13 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
14 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
15 |
* GNU General Public License for more details. |
|
16 |
* |
|
17 |
* You should have received a copy of the GNU General Public License |
|
18 |
* along with this program; if not, write to the Free Software |
|
19 |
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, |
|
20 |
* MA 02110-1301, USA. |
|
21 |
* |
|
22 |
* For any additional information, do not hesitate to contact us |
|
23 |
* at info AT gvsig.com, or visit our website www.gvsig.com. |
|
24 |
* |
|
25 |
*******************************************************************************/ |
|
26 |
package org.gvsig.expressionfield.project.documents.table.operators; |
|
27 |
|
|
28 |
import org.apache.bsf.BSFException; |
|
29 |
import org.apache.bsf.BSFManager; |
|
30 |
import org.gvsig.andami.PluginServices; |
|
31 |
import org.gvsig.expressionfield.ExpressionFieldExtension; |
|
32 |
import org.gvsig.expressionfield.project.documents.table.AbstractOperator; |
|
33 |
import org.gvsig.expressionfield.project.documents.table.IOperator; |
|
34 |
|
|
35 |
|
|
36 |
/** |
|
37 |
* @author Vicente Caballero Navarro |
|
38 |
*/ |
|
39 |
public class IsNumber extends AbstractOperator{ |
|
40 |
|
|
41 |
public String addText(String s) { |
|
42 |
return toString()+"("+s+")"; |
|
43 |
} |
|
44 |
public String toString() { |
|
45 |
return "isNumber"; |
|
46 |
} |
|
47 |
public void eval(BSFManager interpreter) throws BSFException { |
|
48 |
// interpreter.eval(ExpressionFieldExtension.BEANSHELL,null,-1,-1,"boolean isNumber (String value){try{java.lang.Double.parseDouble(value);}catch(java.lang.NumberFormatException e){return false;}return true;};"); |
|
49 |
interpreter.exec(ExpressionFieldExtension.JYTHON,null,-1,-1,"def isNumber(value):\n" + |
|
50 |
" import java.lang.Double\n" + |
|
51 |
" import java.lang.NumberFormatException\n" + |
|
52 |
" try:\n" + |
|
53 |
" java.lang.Double.parseDouble(value)\n" + |
|
54 |
" except java.lang.NumberFormatException:\n" + |
|
55 |
" return 0==1 #false\n" + |
|
56 |
" return 1==1 #true\n"); |
|
57 |
} |
|
58 |
public boolean isEnable() { |
|
59 |
return (getType()==IOperator.STRING); |
|
60 |
} |
|
61 |
public String getDescription() { |
|
62 |
return PluginServices.getText(this, "parameter") + ": " + |
|
63 |
PluginServices.getText(this, "string_value") + "\n" + |
|
64 |
PluginServices.getText(this, "returns") + ": " + |
|
65 |
PluginServices.getText(this, "boolean_value") + "\n" + |
|
66 |
PluginServices.getText(this, "description") + ": " + |
|
67 |
"Returns true if the string parameter is a number."; |
|
68 |
} |
|
69 |
} |
org.gvsig.expressionfield/tags/org.gvsig.expressionfield-2.0.45/src/main/java/org/gvsig/expressionfield/project/documents/table/operators/Division.java | ||
---|---|---|
1 |
/******************************************************************************* |
|
2 |
* |
|
3 |
* gvSIG. Desktop Geographic Information System. |
|
4 |
* |
|
5 |
* Copyright (C) 2007-2013 gvSIG Association. |
|
6 |
* |
|
7 |
* This program is free software; you can redistribute it and/or |
|
8 |
* modify it under the terms of the GNU General Public License |
|
9 |
* as published by the Free Software Foundation; either version 3 |
|
10 |
* of the License, or (at your option) any later version. |
|
11 |
* |
|
12 |
* This program is distributed in the hope that it will be useful, |
|
13 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
14 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
15 |
* GNU General Public License for more details. |
|
16 |
* |
|
17 |
* You should have received a copy of the GNU General Public License |
|
18 |
* along with this program; if not, write to the Free Software |
|
19 |
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, |
|
20 |
* MA 02110-1301, USA. |
|
21 |
* |
|
22 |
* For any additional information, do not hesitate to contact us |
|
23 |
* at info AT gvsig.com, or visit our website www.gvsig.com. |
|
24 |
* |
|
25 |
*******************************************************************************/ |
|
26 |
package org.gvsig.expressionfield.project.documents.table.operators; |
|
27 |
|
|
28 |
import org.apache.bsf.BSFException; |
|
29 |
import org.apache.bsf.BSFManager; |
|
30 |
import org.gvsig.andami.PluginServices; |
|
31 |
import org.gvsig.expressionfield.project.documents.table.AbstractOperator; |
|
32 |
import org.gvsig.expressionfield.project.documents.table.IOperator; |
|
33 |
|
|
34 |
|
|
35 |
/** |
|
36 |
* @author Vicente Caballero Navarro |
|
37 |
*/ |
|
38 |
public class Division extends AbstractOperator{ |
|
39 |
|
|
40 |
public String addText(String s) { |
|
41 |
return s.concat(toString()); |
|
42 |
} |
|
43 |
|
|
44 |
public void eval(BSFManager interpreter) throws BSFException { |
|
45 |
} |
|
46 |
public String toString() { |
|
47 |
return "/"; |
|
48 |
} |
|
49 |
public boolean isEnable() { |
|
50 |
return (getType()==IOperator.NUMBER); |
|
51 |
} |
|
52 |
public String getTooltip(){ |
|
53 |
return PluginServices.getText(this,"operator")+": "+addText("")+"\n"+getDescription(); |
|
54 |
} |
|
55 |
public String getDescription() { |
|
56 |
return PluginServices.getText(this, "returns") + ": " + |
|
57 |
PluginServices.getText(this, "numeric_value") + "\n" + |
|
58 |
PluginServices.getText(this, "description") + ": " + |
|
59 |
"Returns the result of division."; |
|
60 |
} |
|
61 |
} |
org.gvsig.expressionfield/tags/org.gvsig.expressionfield-2.0.45/src/main/java/org/gvsig/expressionfield/project/documents/table/operators/ToRadians.java | ||
---|---|---|
1 |
/******************************************************************************* |
|
2 |
* |
|
3 |
* gvSIG. Desktop Geographic Information System. |
|
4 |
* |
|
5 |
* Copyright (C) 2007-2013 gvSIG Association. |
|
6 |
* |
|
7 |
* This program is free software; you can redistribute it and/or |
|
8 |
* modify it under the terms of the GNU General Public License |
|
9 |
* as published by the Free Software Foundation; either version 3 |
|
10 |
* of the License, or (at your option) any later version. |
|
11 |
* |
|
12 |
* This program is distributed in the hope that it will be useful, |
|
13 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
14 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
15 |
* GNU General Public License for more details. |
|
16 |
* |
|
17 |
* You should have received a copy of the GNU General Public License |
|
18 |
* along with this program; if not, write to the Free Software |
|
19 |
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, |
|
20 |
* MA 02110-1301, USA. |
|
21 |
* |
|
22 |
* For any additional information, do not hesitate to contact us |
|
23 |
* at info AT gvsig.com, or visit our website www.gvsig.com. |
|
24 |
* |
|
25 |
*******************************************************************************/ |
|
26 |
package org.gvsig.expressionfield.project.documents.table.operators; |
|
27 |
|
|
28 |
import org.apache.bsf.BSFException; |
|
29 |
import org.apache.bsf.BSFManager; |
|
30 |
import org.gvsig.andami.PluginServices; |
|
31 |
import org.gvsig.expressionfield.ExpressionFieldExtension; |
|
32 |
import org.gvsig.expressionfield.project.documents.table.AbstractOperator; |
|
33 |
import org.gvsig.expressionfield.project.documents.table.IOperator; |
|
34 |
|
|
35 |
|
|
36 |
/** |
|
37 |
* @author Vicente Caballero Navarro |
|
38 |
*/ |
|
39 |
public class ToRadians extends AbstractOperator{ |
|
40 |
|
|
41 |
public String addText(String s) { |
|
42 |
return toString()+"("+s+")"; |
|
43 |
} |
|
44 |
public String toString() { |
|
45 |
return "toRadians"; |
|
46 |
} |
|
47 |
public void eval(BSFManager interpreter) throws BSFException { |
|
48 |
// interpreter.eval(ExpressionFieldExtension.BEANSHELL,null,-1,-1,"double toRadians(double value){return java.lang.Math.toRadians(value);};"); |
|
49 |
interpreter.exec(ExpressionFieldExtension.JYTHON,null,-1,-1,"def toRadians(value):\n" + |
|
50 |
" import java.lang.Math\n" + |
|
51 |
" return java.lang.Math.toRadians(value)"); |
|
52 |
} |
|
53 |
public boolean isEnable() { |
|
54 |
return (getType()==IOperator.NUMBER); |
|
55 |
} |
|
56 |
public String getDescription() { |
|
57 |
return PluginServices.getText(this, "parameter") + ": " + |
|
58 |
PluginServices.getText(this, "numeric_value") + "\n" + |
|
59 |
PluginServices.getText(this, "returns") + ": " + |
|
60 |
PluginServices.getText(this, "numeric_value") + "\n" + |
|
61 |
PluginServices.getText(this, "description") + ": " + |
|
62 |
"Converts an angle measured in degrees to an approximately equivalent angle measured in radians. The conversion from degrees to radians is generally inexact."; |
|
63 |
} |
|
64 |
} |
org.gvsig.expressionfield/tags/org.gvsig.expressionfield-2.0.45/src/main/java/org/gvsig/expressionfield/project/documents/table/operators/EndsWith.java | ||
---|---|---|
1 |
/******************************************************************************* |
|
2 |
* |
|
3 |
* gvSIG. Desktop Geographic Information System. |
|
4 |
* |
|
5 |
* Copyright (C) 2007-2013 gvSIG Association. |
|
6 |
* |
|
7 |
* This program is free software; you can redistribute it and/or |
|
8 |
* modify it under the terms of the GNU General Public License |
|
9 |
* as published by the Free Software Foundation; either version 3 |
|
10 |
* of the License, or (at your option) any later version. |
|
11 |
* |
|
12 |
* This program is distributed in the hope that it will be useful, |
|
13 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
14 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
15 |
* GNU General Public License for more details. |
|
16 |
* |
|
17 |
* You should have received a copy of the GNU General Public License |
|
18 |
* along with this program; if not, write to the Free Software |
|
19 |
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, |
|
20 |
* MA 02110-1301, USA. |
|
21 |
* |
|
22 |
* For any additional information, do not hesitate to contact us |
|
23 |
* at info AT gvsig.com, or visit our website www.gvsig.com. |
|
24 |
* |
|
25 |
*******************************************************************************/ |
|
26 |
package org.gvsig.expressionfield.project.documents.table.operators; |
|
27 |
|
|
28 |
import org.apache.bsf.BSFException; |
|
29 |
import org.apache.bsf.BSFManager; |
|
30 |
import org.gvsig.andami.PluginServices; |
|
31 |
import org.gvsig.expressionfield.ExpressionFieldExtension; |
|
32 |
import org.gvsig.expressionfield.project.documents.table.AbstractOperator; |
|
33 |
import org.gvsig.expressionfield.project.documents.table.IOperator; |
|
34 |
|
|
35 |
|
|
36 |
/** |
|
37 |
* @author Vicente Caballero Navarro |
|
38 |
*/ |
|
39 |
public class EndsWith extends AbstractOperator{ |
|
40 |
|
|
41 |
public String addText(String s) { |
|
42 |
return toString()+"("+s+",\"\")"; |
|
43 |
} |
|
44 |
public String toString() { |
|
45 |
return "endsWith"; |
|
46 |
} |
|
47 |
public void eval(BSFManager interpreter) throws BSFException { |
|
48 |
// interpreter.eval(ExpressionFieldExtension.BEANSHELL,null,-1,-1,"boolean endsWith(String value1,String value2){return value1.endsWith(value2);};"); |
|
49 |
interpreter.exec(ExpressionFieldExtension.JYTHON,null,-1,-1,"def endsWith(value1,value2):\n" + |
|
50 |
" return value1.endswith(value2)"); |
|
51 |
} |
|
52 |
public boolean isEnable() { |
|
53 |
return (getType()==IOperator.STRING); |
|
54 |
} |
|
55 |
public String getTooltip(){ |
|
56 |
return PluginServices.getText(this,"operator")+": "+toString()+ "("+ PluginServices.getText(this,"parameter")+"1,"+PluginServices.getText(this,"parameter")+"2"+")\n"+getDescription(); |
|
57 |
} |
|
58 |
public String getDescription() { |
|
59 |
return PluginServices.getText(this, "parameter") + "1"+": " + |
|
60 |
PluginServices.getText(this, "string_value") + "\n"+ |
|
61 |
PluginServices.getText(this, "parameter") + "2"+": " + |
|
62 |
PluginServices.getText(this, "string_value") + "\n"+ |
|
63 |
PluginServices.getText(this, "returns") + ": " + |
|
64 |
PluginServices.getText(this, "boolean_value") + "\n" + |
|
65 |
PluginServices.getText(this, "description") + ": " + |
|
66 |
"Tests if this parameter1 ends with the specified parameter2."; |
|
67 |
} |
|
68 |
} |
org.gvsig.expressionfield/tags/org.gvsig.expressionfield-2.0.45/src/main/java/org/gvsig/expressionfield/project/documents/table/operators/Max.java | ||
---|---|---|
1 |
/******************************************************************************* |
|
2 |
* |
|
3 |
* gvSIG. Desktop Geographic Information System. |
|
4 |
* |
|
5 |
* Copyright (C) 2007-2013 gvSIG Association. |
|
6 |
* |
|
7 |
* This program is free software; you can redistribute it and/or |
|
8 |
* modify it under the terms of the GNU General Public License |
|
9 |
* as published by the Free Software Foundation; either version 3 |
|
10 |
* of the License, or (at your option) any later version. |
|
11 |
* |
|
12 |
* This program is distributed in the hope that it will be useful, |
|
13 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
14 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
15 |
* GNU General Public License for more details. |
|
16 |
* |
|
17 |
* You should have received a copy of the GNU General Public License |
|
18 |
* along with this program; if not, write to the Free Software |
|
19 |
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, |
|
20 |
* MA 02110-1301, USA. |
|
21 |
* |
|
22 |
* For any additional information, do not hesitate to contact us |
|
23 |
* at info AT gvsig.com, or visit our website www.gvsig.com. |
|
24 |
* |
|
25 |
*******************************************************************************/ |
|
26 |
package org.gvsig.expressionfield.project.documents.table.operators; |
|
27 |
|
|
28 |
import org.apache.bsf.BSFException; |
|
29 |
import org.apache.bsf.BSFManager; |
|
30 |
import org.gvsig.andami.PluginServices; |
|
31 |
import org.gvsig.expressionfield.ExpressionFieldExtension; |
|
32 |
import org.gvsig.expressionfield.project.documents.table.AbstractOperator; |
|
33 |
import org.gvsig.expressionfield.project.documents.table.IOperator; |
|
34 |
|
|
35 |
/** |
|
36 |
* @author Vicente Caballero Navarro |
|
37 |
*/ |
|
38 |
public class Max extends AbstractOperator{ |
|
39 |
|
|
40 |
public String addText(String s) { |
|
41 |
return toString()+"("+s+")"; |
|
42 |
} |
|
43 |
public String toString() { |
|
44 |
return "max"; |
|
45 |
} |
|
46 |
public void eval(BSFManager interpreter) throws BSFException { |
|
47 |
// interpreter.eval(ExpressionFieldExtension.BEANSHELL,null,-1,-1,"double max(double value1,double value2){return java.lang.Math.max(value1,value2);};"); |
|
48 |
interpreter.exec(ExpressionFieldExtension.JYTHON,null,-1,-1,"def max(value1,value2):\n" + |
|
49 |
" import java.lang.Math\n" + |
|
50 |
" return java.lang.Math.max(value1,value2)"); |
|
51 |
} |
|
52 |
public boolean isEnable() { |
|
53 |
return (getType()==IOperator.NUMBER); |
|
54 |
} |
|
55 |
public String getTooltip(){ |
|
56 |
return PluginServices.getText(this,"operator")+": "+toString()+ "("+ PluginServices.getText(this,"parameter")+"1,"+PluginServices.getText(this,"parameter")+"2"+")\n"+getDescription(); |
|
57 |
} |
|
58 |
public String getDescription() { |
|
59 |
return PluginServices.getText(this, "parameter") + "1"+": " + |
|
60 |
PluginServices.getText(this, "numeric_value") + "\n"+ |
|
61 |
PluginServices.getText(this, "parameter") + "2"+": " + |
|
62 |
PluginServices.getText(this, "numeric_value") + "\n"+ |
|
63 |
PluginServices.getText(this, "returns") + ": " + |
|
64 |
PluginServices.getText(this, "numeric_value") + "\n" + |
|
65 |
PluginServices.getText(this, "description") + ": " + |
|
66 |
"Returns the greater of two double values. That is, the result is the argument closer to positive infinity. \n" + |
|
67 |
"If the arguments have the same value, the result is that same value. If either value is NaN, then the result is NaN.\n" + |
|
68 |
"Unlike the the numerical comparison operators, this method considers negative zero to be strictly smaller than positive zero.\n" + |
|
69 |
"If one argument is positive zero and the other negative zero, the result is positive zero."; |
|
70 |
} |
|
71 |
} |
org.gvsig.expressionfield/tags/org.gvsig.expressionfield-2.0.45/src/main/java/org/gvsig/expressionfield/project/documents/table/operators/Sin.java | ||
---|---|---|
1 |
/******************************************************************************* |
|
2 |
* |
|
3 |
* gvSIG. Desktop Geographic Information System. |
|
4 |
* |
|
5 |
* Copyright (C) 2007-2013 gvSIG Association. |
|
6 |
* |
|
7 |
* This program is free software; you can redistribute it and/or |
|
8 |
* modify it under the terms of the GNU General Public License |
|
9 |
* as published by the Free Software Foundation; either version 3 |
|
10 |
* of the License, or (at your option) any later version. |
|
11 |
* |
|
12 |
* This program is distributed in the hope that it will be useful, |
|
13 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
14 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
15 |
* GNU General Public License for more details. |
|
16 |
* |
|
17 |
* You should have received a copy of the GNU General Public License |
|
18 |
* along with this program; if not, write to the Free Software |
|
19 |
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, |
|
20 |
* MA 02110-1301, USA. |
|
21 |
* |
|
22 |
* For any additional information, do not hesitate to contact us |
|
23 |
* at info AT gvsig.com, or visit our website www.gvsig.com. |
|
24 |
* |
|
25 |
*******************************************************************************/ |
|
26 |
package org.gvsig.expressionfield.project.documents.table.operators; |
|
27 |
|
|
28 |
import org.apache.bsf.BSFException; |
|
29 |
import org.apache.bsf.BSFManager; |
|
30 |
import org.gvsig.andami.PluginServices; |
|
31 |
import org.gvsig.expressionfield.ExpressionFieldExtension; |
|
32 |
import org.gvsig.expressionfield.project.documents.table.AbstractOperator; |
|
33 |
import org.gvsig.expressionfield.project.documents.table.IOperator; |
|
34 |
|
|
35 |
|
|
36 |
/** |
|
37 |
* @author Vicente Caballero Navarro |
|
38 |
*/ |
|
39 |
public class Sin extends AbstractOperator{ |
|
40 |
|
|
41 |
public String addText(String s) { |
|
42 |
return toString()+"("+s+")"; |
|
43 |
} |
|
44 |
public String toString() { |
|
45 |
return "sin"; |
|
46 |
} |
|
47 |
public void eval(BSFManager interpreter) throws BSFException { |
|
48 |
// interpreter.eval(ExpressionFieldExtension.BEANSHELL,null,-1,-1,"double sin(double value){return java.lang.Math.sin(value);};"); |
|
49 |
interpreter.exec(ExpressionFieldExtension.JYTHON,null,-1,-1,"def sin(value):\n" + |
|
50 |
" import java.lang.Math\n" + |
|
51 |
" return java.lang.Math.sin(value)"); |
|
52 |
} |
|
53 |
public boolean isEnable() { |
|
54 |
return (getType()==IOperator.NUMBER); |
|
55 |
} |
|
56 |
public String getDescription() { |
|
57 |
return PluginServices.getText(this, "parameter") + ": " + |
|
58 |
PluginServices.getText(this, "numeric_value") + "\n" + |
|
59 |
PluginServices.getText(this, "returns") + ": " + |
|
60 |
PluginServices.getText(this, "numeric_value") + "\n" + |
|
61 |
PluginServices.getText(this, "description") + ": " + |
|
62 |
"Returns the trigonometric sine of an angle. Special cases:\n" + |
|
63 |
"* If the argument is NaN or an infinity, then the result is NaN.\n" + |
|
64 |
"* If the argument is zero, then the result is a zero with the same sign as the argument."; |
|
65 |
} |
|
66 |
} |
org.gvsig.expressionfield/tags/org.gvsig.expressionfield-2.0.45/src/main/java/org/gvsig/expressionfield/project/documents/table/operators/Asin.java | ||
---|---|---|
1 |
/******************************************************************************* |
|
2 |
* |
|
3 |
* gvSIG. Desktop Geographic Information System. |
|
4 |
* |
|
5 |
* Copyright (C) 2007-2013 gvSIG Association. |
|
6 |
* |
|
7 |
* This program is free software; you can redistribute it and/or |
|
8 |
* modify it under the terms of the GNU General Public License |
|
9 |
* as published by the Free Software Foundation; either version 3 |
|
10 |
* of the License, or (at your option) any later version. |
|
11 |
* |
|
12 |
* This program is distributed in the hope that it will be useful, |
|
13 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
14 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
15 |
* GNU General Public License for more details. |
|
16 |
* |
|
17 |
* You should have received a copy of the GNU General Public License |
|
18 |
* along with this program; if not, write to the Free Software |
|
19 |
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, |
|
20 |
* MA 02110-1301, USA. |
|
21 |
* |
|
22 |
* For any additional information, do not hesitate to contact us |
|
23 |
* at info AT gvsig.com, or visit our website www.gvsig.com. |
|
24 |
* |
|
25 |
*******************************************************************************/ |
|
26 |
package org.gvsig.expressionfield.project.documents.table.operators; |
|
27 |
|
|
28 |
import org.apache.bsf.BSFException; |
|
29 |
import org.apache.bsf.BSFManager; |
|
30 |
import org.gvsig.andami.PluginServices; |
|
31 |
import org.gvsig.expressionfield.ExpressionFieldExtension; |
|
32 |
import org.gvsig.expressionfield.project.documents.table.AbstractOperator; |
|
33 |
import org.gvsig.expressionfield.project.documents.table.IOperator; |
|
34 |
|
|
35 |
|
|
36 |
/** |
|
37 |
* @author Vicente Caballero Navarro |
|
38 |
*/ |
|
39 |
public class Asin extends AbstractOperator{ |
|
40 |
|
|
41 |
public String addText(String s) { |
|
42 |
return toString()+"("+s+")"; |
|
43 |
} |
|
44 |
public String toString() { |
|
45 |
return "asin"; |
|
46 |
} |
|
47 |
public void eval(BSFManager interpreter) throws BSFException { |
|
48 |
// interpreter.eval(ExpressionFieldExtension.BEANSHELL,null,-1,-1,"double asin(double value){return java.lang.Math.asin(value);};"); |
|
49 |
interpreter.exec(ExpressionFieldExtension.JYTHON,null,-1,-1,"def asin(value):\n" + |
|
50 |
" import java.lang.Math\n" + |
|
51 |
" return java.lang.Math.asin(value)"); |
|
52 |
} |
|
53 |
public boolean isEnable() { |
|
54 |
return (getType()==IOperator.NUMBER); |
|
55 |
} |
|
56 |
public String getDescription() { |
|
57 |
return PluginServices.getText(this, "parameter") + ": " + |
|
58 |
PluginServices.getText(this, "numeric_value") + "\n" + |
|
59 |
PluginServices.getText(this, "returns") + ": " + |
|
60 |
PluginServices.getText(this, "numeric_value") + "\n" + |
|
61 |
PluginServices.getText(this, "description") + ": " + |
|
62 |
"Returns the arc sine of an angle, in the range of -pi/2 through pi/2. Special cases:\n" + |
|
63 |
"* If the argument is NaN or its absolute value is greater than 1, then the result is NaN.\n" + |
|
64 |
"* If the argument is zero, then the result is a zero with the same sign as the argument.\n"; |
|
65 |
} |
|
66 |
} |
org.gvsig.expressionfield/tags/org.gvsig.expressionfield-2.0.45/src/main/java/org/gvsig/expressionfield/project/documents/table/operators/Minus.java | ||
---|---|---|
1 |
/******************************************************************************* |
|
2 |
* |
|
3 |
* gvSIG. Desktop Geographic Information System. |
|
4 |
* |
|
5 |
* Copyright (C) 2007-2013 gvSIG Association. |
|
6 |
* |
|
7 |
* This program is free software; you can redistribute it and/or |
|
8 |
* modify it under the terms of the GNU General Public License |
|
9 |
* as published by the Free Software Foundation; either version 3 |
|
10 |
* of the License, or (at your option) any later version. |
|
11 |
* |
|
12 |
* This program is distributed in the hope that it will be useful, |
|
13 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
14 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
15 |
* GNU General Public License for more details. |
|
16 |
* |
|
17 |
* You should have received a copy of the GNU General Public License |
|
18 |
* along with this program; if not, write to the Free Software |
|
19 |
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, |
|
20 |
* MA 02110-1301, USA. |
|
21 |
* |
|
22 |
* For any additional information, do not hesitate to contact us |
|
23 |
* at info AT gvsig.com, or visit our website www.gvsig.com. |
|
24 |
* |
|
25 |
*******************************************************************************/ |
|
26 |
package org.gvsig.expressionfield.project.documents.table.operators; |
|
27 |
|
|
28 |
import org.apache.bsf.BSFException; |
|
29 |
import org.apache.bsf.BSFManager; |
|
30 |
import org.gvsig.andami.PluginServices; |
|
31 |
import org.gvsig.expressionfield.project.documents.table.AbstractOperator; |
|
32 |
import org.gvsig.expressionfield.project.documents.table.IOperator; |
|
33 |
|
|
34 |
/** |
|
35 |
* @author Vicente Caballero Navarro |
|
36 |
*/ |
|
37 |
public class Minus extends AbstractOperator{ |
|
38 |
|
|
39 |
public String addText(String s) { |
|
40 |
return s.concat(toString()); |
|
41 |
} |
|
42 |
public String toString() { |
|
43 |
return "-"; |
|
44 |
} |
|
45 |
public void eval(BSFManager interpreter) throws BSFException { |
|
46 |
} |
|
47 |
public boolean isEnable() { |
|
48 |
return (getType()==IOperator.NUMBER); |
|
49 |
} |
|
50 |
public String getTooltip(){ |
|
51 |
return PluginServices.getText(this,"operator")+": "+addText("")+"\n"+getDescription(); |
|
52 |
} |
|
53 |
public String getDescription() { |
|
54 |
return PluginServices.getText(this, "returns") + ": " + |
|
55 |
PluginServices.getText(this, "numeric_value") + "\n" + |
|
56 |
PluginServices.getText(this, "description") + ": " + |
|
57 |
"Returns the result of rest."; |
|
58 |
} |
|
59 |
} |
org.gvsig.expressionfield/tags/org.gvsig.expressionfield-2.0.45/src/main/java/org/gvsig/expressionfield/project/documents/table/operators/Geometry.java | ||
---|---|---|
1 |
/******************************************************************************* |
|
2 |
* |
|
3 |
* gvSIG. Desktop Geographic Information System. |
|
4 |
* |
|
5 |
* Copyright (C) 2007-2013 gvSIG Association. |
|
6 |
* |
|
7 |
* This program is free software; you can redistribute it and/or |
|
8 |
* modify it under the terms of the GNU General Public License |
|
9 |
* as published by the Free Software Foundation; either version 3 |
|
10 |
* of the License, or (at your option) any later version. |
|
11 |
* |
|
12 |
* This program is distributed in the hope that it will be useful, |
|
13 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
14 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
15 |
* GNU General Public License for more details. |
|
16 |
* |
|
17 |
* You should have received a copy of the GNU General Public License |
|
18 |
* along with this program; if not, write to the Free Software |
|
19 |
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, |
|
20 |
* MA 02110-1301, USA. |
|
21 |
* |
|
22 |
* For any additional information, do not hesitate to contact us |
|
23 |
* at info AT gvsig.com, or visit our website www.gvsig.com. |
|
24 |
* |
|
25 |
*******************************************************************************/ |
|
26 |
package org.gvsig.expressionfield.project.documents.table.operators; |
|
27 |
|
|
28 |
import org.apache.bsf.BSFException; |
|
29 |
import org.apache.bsf.BSFManager; |
|
30 |
import org.gvsig.andami.PluginServices; |
|
31 |
import org.gvsig.expressionfield.ExpressionFieldExtension; |
|
32 |
import org.gvsig.expressionfield.project.documents.table.GraphicOperator; |
|
33 |
import org.gvsig.fmap.dal.feature.Feature; |
|
34 |
|
|
35 |
/** |
|
36 |
* @author Vicente Caballero Navarro |
|
37 |
*/ |
|
38 |
public class Geometry extends GraphicOperator{ |
|
39 |
|
|
40 |
public String addText(String s) { |
|
41 |
return s.concat(toString()+"()"); |
|
42 |
} |
|
43 |
public double process(Feature feature) { |
|
44 |
return 0; |
|
45 |
} |
|
46 |
public org.gvsig.fmap.geom.Geometry getGeometry(Feature feature) { |
|
47 |
// ReadableVectorial adapter = getLayer().getSource(); |
|
48 |
org.gvsig.fmap.geom.Geometry geom=feature.getDefaultGeometry();//adapter.getShape(index.get()); |
|
49 |
return geom; |
|
50 |
} |
|
51 |
public void eval(BSFManager interpreter) throws BSFException { |
|
52 |
interpreter.declareBean("jgeometry",this,Geometry.class); |
|
53 |
// interpreter.eval(ExpressionFieldExtension.BEANSHELL,null,-1,-1,"java.lang.Object geometry(){return geometry.getGeometry(indexRow);};"); |
|
54 |
interpreter.exec(ExpressionFieldExtension.JYTHON,null,-1,-1,"def geometry():\n" + |
|
55 |
" return jgeometry.getGeometry(featureContainer.getFeature())"); |
|
56 |
} |
|
57 |
public String toString() { |
|
58 |
return "geometry"; |
|
59 |
} |
|
60 |
public boolean isEnable() { |
|
61 |
return false; |
|
62 |
} |
|
63 |
public String getTooltip(){ |
|
64 |
return PluginServices.getText(this,"operator")+": "+addText("")+"\n"+getDescription(); |
|
65 |
} |
|
66 |
public String getDescription() { |
|
67 |
return PluginServices.getText(this, "returns") + ": " + |
|
68 |
PluginServices.getText(this, "numeric_value") + "\n" + |
|
69 |
PluginServices.getText(this, "description") + ": " + |
|
70 |
"Returns the geometry of this row."; |
|
71 |
} |
|
72 |
} |
org.gvsig.expressionfield/tags/org.gvsig.expressionfield-2.0.45/src/main/java/org/gvsig/expressionfield/project/documents/table/operators/ToNumber.java | ||
---|---|---|
1 |
/******************************************************************************* |
|
2 |
* |
|
3 |
* gvSIG. Desktop Geographic Information System. |
|
4 |
* |
|
5 |
* Copyright (C) 2007-2013 gvSIG Association. |
|
6 |
* |
|
7 |
* This program is free software; you can redistribute it and/or |
|
8 |
* modify it under the terms of the GNU General Public License |
|
9 |
* as published by the Free Software Foundation; either version 3 |
|
10 |
* of the License, or (at your option) any later version. |
|
11 |
* |
|
12 |
* This program is distributed in the hope that it will be useful, |
|
13 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
14 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
15 |
* GNU General Public License for more details. |
|
16 |
* |
|
17 |
* You should have received a copy of the GNU General Public License |
|
18 |
* along with this program; if not, write to the Free Software |
|
19 |
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, |
|
20 |
* MA 02110-1301, USA. |
|
21 |
* |
|
22 |
* For any additional information, do not hesitate to contact us |
|
23 |
* at info AT gvsig.com, or visit our website www.gvsig.com. |
|
24 |
* |
|
25 |
*******************************************************************************/ |
|
26 |
package org.gvsig.expressionfield.project.documents.table.operators; |
|
27 |
|
|
28 |
import org.apache.bsf.BSFException; |
|
29 |
import org.apache.bsf.BSFManager; |
|
30 |
import org.gvsig.andami.PluginServices; |
|
31 |
import org.gvsig.expressionfield.ExpressionFieldExtension; |
|
32 |
import org.gvsig.expressionfield.project.documents.table.AbstractOperator; |
|
33 |
import org.gvsig.expressionfield.project.documents.table.IOperator; |
|
34 |
|
|
35 |
|
|
36 |
/** |
|
37 |
* @author Vicente Caballero Navarro |
|
38 |
*/ |
|
39 |
public class ToNumber extends AbstractOperator{ |
|
40 |
|
|
41 |
public String addText(String s) { |
|
42 |
return toString()+"("+s+")"; |
|
43 |
} |
|
44 |
public String toString() { |
|
45 |
return "toNumber"; |
|
46 |
} |
|
47 |
public void eval(BSFManager interpreter) throws BSFException { |
|
48 |
// interpreter.eval(ExpressionFieldExtension.BEANSHELL,null,-1,-1,"double toNumber(String value){return java.lang.Double.parseDouble(value);};"); |
|
49 |
interpreter.exec(ExpressionFieldExtension.JYTHON,null,-1,-1,"def toNumber(value):\n" + |
|
50 |
" import java.lang.Double\n" + |
|
51 |
" return java.lang.Double.parseDouble(value)"); |
|
52 |
} |
|
53 |
public boolean isEnable() { |
|
54 |
return (getType()==IOperator.NUMBER ); |
|
55 |
} |
|
56 |
public String getDescription() { |
|
57 |
return PluginServices.getText(this, "parameter") + ": " + |
|
58 |
PluginServices.getText(this, "string_value") + "\n" + |
|
59 |
PluginServices.getText(this, "returns") + ": " + |
|
60 |
PluginServices.getText(this, "double_value") + "\n" + |
|
61 |
PluginServices.getText(this, "description") + ": " + |
|
62 |
"Returns a new number initialized to the value represented by the specified String"; |
|
63 |
} |
|
64 |
} |
org.gvsig.expressionfield/tags/org.gvsig.expressionfield-2.0.45/src/main/java/org/gvsig/expressionfield/project/documents/table/operators/IndexOf.java | ||
---|---|---|
1 |
/******************************************************************************* |
|
2 |
* |
|
3 |
* gvSIG. Desktop Geographic Information System. |
|
4 |
* |
|
5 |
* Copyright (C) 2007-2013 gvSIG Association. |
|
6 |
* |
|
7 |
* This program is free software; you can redistribute it and/or |
|
8 |
* modify it under the terms of the GNU General Public License |
|
9 |
* as published by the Free Software Foundation; either version 3 |
|
10 |
* of the License, or (at your option) any later version. |
|
11 |
* |
|
12 |
* This program is distributed in the hope that it will be useful, |
|
13 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
14 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
15 |
* GNU General Public License for more details. |
|
16 |
* |
|
17 |
* You should have received a copy of the GNU General Public License |
|
18 |
* along with this program; if not, write to the Free Software |
|
19 |
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, |
|
20 |
* MA 02110-1301, USA. |
|
21 |
* |
|
22 |
* For any additional information, do not hesitate to contact us |
|
23 |
* at info AT gvsig.com, or visit our website www.gvsig.com. |
|
24 |
* |
|
25 |
*******************************************************************************/ |
|
26 |
package org.gvsig.expressionfield.project.documents.table.operators; |
|
27 |
|
|
28 |
import org.apache.bsf.BSFException; |
|
29 |
import org.apache.bsf.BSFManager; |
|
30 |
import org.gvsig.andami.PluginServices; |
|
31 |
import org.gvsig.expressionfield.ExpressionFieldExtension; |
|
32 |
import org.gvsig.expressionfield.project.documents.table.AbstractOperator; |
|
33 |
import org.gvsig.expressionfield.project.documents.table.IOperator; |
|
34 |
|
|
35 |
|
|
36 |
/** |
|
37 |
* @author Vicente Caballero Navarro |
|
38 |
*/ |
|
39 |
public class IndexOf extends AbstractOperator{ |
|
40 |
|
|
41 |
public String addText(String s) { |
|
42 |
return toString()+"("+s+", \"\")"; |
|
43 |
} |
|
44 |
public String toString() { |
|
45 |
return "indexOf"; |
|
46 |
} |
|
47 |
public void eval(BSFManager interpreter) throws BSFException { |
|
48 |
interpreter.exec(ExpressionFieldExtension.JYTHON,null,-1,-1,"def indexOf(value1,value2):\n" + |
|
49 |
" return value1.find(value2)"); |
|
50 |
} |
|
51 |
public boolean isEnable() { |
|
52 |
return (getType()==IOperator.STRING); |
|
53 |
} |
|
54 |
public String getTooltip(){ |
|
55 |
return PluginServices.getText(this,"operator")+": " + |
|
56 |
toString()+ |
|
57 |
"("+PluginServices.getText(this,"parameter")+"1,"+PluginServices.getText(this,"parameter")+"2)\n"+ |
|
58 |
getDescription(); |
|
59 |
} |
|
60 |
|
|
61 |
public String getDescription() { |
|
62 |
return PluginServices.getText(this, "parameter") + "1"+": " + |
|
63 |
PluginServices.getText(this, "string_value") + "\n"+ |
|
64 |
PluginServices.getText(this, "parameter") + "2"+": " + |
|
65 |
PluginServices.getText(this, "string_value") + "\n"+ |
|
66 |
PluginServices.getText(this, "returns") + ": " + |
|
67 |
PluginServices.getText(this, "integer_value") + "\n" + |
|
68 |
PluginServices.getText(this, "description") + ": " + |
|
69 |
"Returns the index within parameter1 of the first occurrence of the parameter2."; |
|
70 |
} |
|
71 |
} |
org.gvsig.expressionfield/tags/org.gvsig.expressionfield-2.0.45/src/main/java/org/gvsig/expressionfield/project/documents/table/operators/GetTimeDate.java | ||
---|---|---|
1 |
/******************************************************************************* |
|
2 |
* |
|
3 |
* gvSIG. Desktop Geographic Information System. |
|
4 |
* |
|
5 |
* Copyright (C) 2007-2013 gvSIG Association. |
|
6 |
* |
|
7 |
* This program is free software; you can redistribute it and/or |
|
8 |
* modify it under the terms of the GNU General Public License |
|
9 |
* as published by the Free Software Foundation; either version 3 |
|
10 |
* of the License, or (at your option) any later version. |
|
11 |
* |
|
12 |
* This program is distributed in the hope that it will be useful, |
|
13 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
14 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
15 |
* GNU General Public License for more details. |
|
16 |
* |
|
17 |
* You should have received a copy of the GNU General Public License |
|
18 |
* along with this program; if not, write to the Free Software |
|
19 |
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, |
|
20 |
* MA 02110-1301, USA. |
|
21 |
* |
|
22 |
* For any additional information, do not hesitate to contact us |
|
23 |
* at info AT gvsig.com, or visit our website www.gvsig.com. |
|
24 |
* |
|
25 |
*******************************************************************************/ |
|
26 |
package org.gvsig.expressionfield.project.documents.table.operators; |
|
27 |
|
|
28 |
import org.apache.bsf.BSFException; |
|
29 |
import org.apache.bsf.BSFManager; |
|
30 |
import org.gvsig.andami.PluginServices; |
|
31 |
import org.gvsig.expressionfield.ExpressionFieldExtension; |
|
32 |
import org.gvsig.expressionfield.project.documents.table.AbstractOperator; |
|
33 |
import org.gvsig.expressionfield.project.documents.table.IOperator; |
|
34 |
|
|
35 |
|
|
36 |
/** |
|
37 |
* @author Vicente Caballero Navarro |
|
38 |
*/ |
|
39 |
public class GetTimeDate extends AbstractOperator{ |
|
40 |
|
|
41 |
public String addText(String s) { |
|
42 |
return toString()+"("+s+")"; |
|
43 |
} |
|
44 |
public String toString() { |
|
45 |
return "getTimeDate"; |
|
46 |
} |
|
47 |
public void eval(BSFManager interpreter) throws BSFException { |
|
48 |
// interpreter.eval(ExpressionFieldExtension.BEANSHELL,null,-1,-1,"double getTimeDate(java.lang.Object value){return value.getTime();};"); |
|
49 |
interpreter.exec(ExpressionFieldExtension.JYTHON,null,-1,-1, |
|
50 |
"def getTimeDate(value):\n" + |
|
51 |
" return value.getTime()"); |
|
52 |
} |
|
53 |
public boolean isEnable() { |
|
54 |
return (getType()==IOperator.DATE); |
|
55 |
} |
|
56 |
|
|
57 |
public String getDescription() { |
|
58 |
return PluginServices.getText(this, "parameter") +": " + |
|
59 |
PluginServices.getText(this, "date_value") + "\n"+ |
|
60 |
PluginServices.getText(this, "returns") + ": " + |
|
61 |
PluginServices.getText(this, "numeric_value") + "\n" + |
|
62 |
PluginServices.getText(this, "description") + ": " + |
|
63 |
"Returns the number of milliseconds since January 1, 1970, 00:00:00 GMT represented by this Date object."; |
|
64 |
} |
|
65 |
} |
org.gvsig.expressionfield/tags/org.gvsig.expressionfield-2.0.45/src/main/java/org/gvsig/expressionfield/project/documents/table/operators/Exp.java | ||
---|---|---|
1 |
/******************************************************************************* |
|
2 |
* |
|
3 |
* gvSIG. Desktop Geographic Information System. |
|
4 |
* |
|
5 |
* Copyright (C) 2007-2013 gvSIG Association. |
|
6 |
* |
|
7 |
* This program is free software; you can redistribute it and/or |
|
8 |
* modify it under the terms of the GNU General Public License |
|
9 |
* as published by the Free Software Foundation; either version 3 |
|
10 |
* of the License, or (at your option) any later version. |
|
11 |
* |
|
12 |
* This program is distributed in the hope that it will be useful, |
|
13 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
14 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
15 |
* GNU General Public License for more details. |
|
16 |
* |
|
17 |
* You should have received a copy of the GNU General Public License |
|
18 |
* along with this program; if not, write to the Free Software |
|
19 |
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, |
|
20 |
* MA 02110-1301, USA. |
|
21 |
* |
|
22 |
* For any additional information, do not hesitate to contact us |
|
23 |
* at info AT gvsig.com, or visit our website www.gvsig.com. |
|
24 |
* |
|
25 |
*******************************************************************************/ |
|
26 |
package org.gvsig.expressionfield.project.documents.table.operators; |
|
27 |
|
|
28 |
import org.apache.bsf.BSFException; |
|
29 |
import org.apache.bsf.BSFManager; |
|
30 |
import org.gvsig.andami.PluginServices; |
|
31 |
import org.gvsig.expressionfield.ExpressionFieldExtension; |
|
32 |
import org.gvsig.expressionfield.project.documents.table.AbstractOperator; |
|
33 |
import org.gvsig.expressionfield.project.documents.table.IOperator; |
|
34 |
|
|
35 |
|
|
36 |
/** |
|
37 |
* @author Vicente Caballero Navarro |
|
38 |
*/ |
|
39 |
public class Exp extends AbstractOperator{ |
|
40 |
|
|
41 |
public String addText(String s) { |
|
42 |
return toString()+"("+s+")"; |
|
43 |
} |
|
44 |
public String toString() { |
|
45 |
return "exp"; |
|
46 |
} |
|
47 |
public void eval(BSFManager interpreter) throws BSFException { |
|
48 |
// interpreter.eval(ExpressionFieldExtension.BEANSHELL,null,-1,-1,"double exp(double value){return java.lang.Math.exp(value);};"); |
|
49 |
interpreter.exec(ExpressionFieldExtension.JYTHON,null,-1,-1,"def exp(value):\n" + |
|
50 |
" import java.lang.Math\n" + |
|
51 |
" return java.lang.Math.exp(value)"); |
Also available in: Unified diff