diff --git a/geoapi-pending/src/main/java/org/opengis/display/canvas/Canvas.java b/geoapi-pending/src/main/java/org/opengis/display/canvas/Canvas.java deleted file mode 100644 index 0c3e54179..000000000 --- a/geoapi-pending/src/main/java/org/opengis/display/canvas/Canvas.java +++ /dev/null @@ -1,99 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2004-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.opengis.display.canvas; - -import java.awt.RenderingHints; -import org.opengis.geometry.DirectPosition; - - -/** - * Defines a common abstraction for implementations that manage the display. Canvas can be extended - * for cartesian display or any kind. A {@code Canvas} with an XY (Cartesian) display field should - * support the following properties: - *
- *
- * Example: if the objective CRS uses a map projection with axis in metres, - * and if the user pan the map, then the change is an affine transform containing - * translation terms in metres. - * - * @return the change from the {@linkplain #getOldState old state} to the - * {@linkplain #getNewState new state}, typically as an affine transform. - */ - public abstract MathTransform getChange(); - - /** - * Calculates to the given canvas state. - * - * @deprecated This method does not said is the change is computed from the old or the - * new state. If we need this functionality, then the method should move to - * {@link CanvasState}. - */ - @Deprecated - public abstract MathTransform getChange(CanvasState other); - - public abstract RenderingState getOldRenderingstate(); - - public abstract RenderingState getNewRenderingstate(); - -} diff --git a/geoapi-pending/src/main/java/org/opengis/display/canvas/CanvasListener.java b/geoapi-pending/src/main/java/org/opengis/display/canvas/CanvasListener.java deleted file mode 100644 index a99092ab4..000000000 --- a/geoapi-pending/src/main/java/org/opengis/display/canvas/CanvasListener.java +++ /dev/null @@ -1,37 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2004-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.opengis.display.canvas; - -import java.util.EventListener; - - -/** - * Listener notified when a {@linkplain Canvas canvas} state changed. - * - * @author Open Geospatial Consortium - * @author Johann Sorel (Geomatys) - * @since GeoAPI 2.2 - */ -public interface CanvasListener extends EventListener { - /** - * Invoked by a {@linkplain Canvas canvas} when its state has changed. - * - * @param event A description of the change. - */ - void canvasChanged(CanvasEvent event); -} diff --git a/geoapi-pending/src/main/java/org/opengis/display/canvas/CanvasState.java b/geoapi-pending/src/main/java/org/opengis/display/canvas/CanvasState.java deleted file mode 100644 index 314c5d387..000000000 --- a/geoapi-pending/src/main/java/org/opengis/display/canvas/CanvasState.java +++ /dev/null @@ -1,120 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2004-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.opengis.display.canvas; - -import org.opengis.geometry.DirectPosition; -import org.opengis.referencing.cs.CartesianCS; -import org.opengis.referencing.cs.SphericalCS; -import org.opengis.referencing.crs.DerivedCRS; -import org.opengis.referencing.crs.ProjectedCRS; -import org.opengis.referencing.crs.CoordinateReferenceSystem; -import org.opengis.referencing.operation.MathTransform; -import org.opengis.util.InternationalString; - - -/** - * Describe the current state of a {@linkplain Canvas canvas}. The information contained - * by instances of this interface should only describe the viewing area or volume of the - * canvas and should not contain any state information regarding the data contained within it. - *
- * When an instance of this class is returned from {@code Canvas} methods, a "snapshot" - * of the current state of the canvas is taken and the values will never change (even - * if the canvas changes state). - * - * @author Open Geospatial Consortium - * @author Johann Sorel (Geomatys) - * @since GeoAPI 2.2 - */ -public interface CanvasState { - /** - * Returns the title of the {@linkplain Canvas canvas}. - * - * @return the canvas title. - * - * @see CanvasController#setTitle - */ - InternationalString getTitle(); - - /** - * Returns the position of the center point of the {@linkplain Canvas canvas}. - * The coordinate shall be in {@linkplain #getObjectiveCRS objective CRS}. - * - * @return the center point in objective CRS. - * - * @see CanvasController#setCenter - */ - DirectPosition getCenter(); - - /** - * Returns the "real world" Coordinate Reference System. This is typically - * a {@linkplain ProjectedCRS projected CRS} using linear units like metre. - * Graphic data are projected to this CRS before to be display. - * - * @return the "real world" Coordinate Reference System. - * - * @see CanvasController#setObjectiveCRS - */ - CoordinateReferenceSystem getObjectiveCRS(); - - /** - * Returns the Coordinate Reference System associated with the - * display of the {@linkplain Canvas canvas}. The display CRS - * {@linkplain CoordinateReferenceSystem#getCoordinateSystem has a Coordinate System} - * corresponding to the geometry of the display device. For example, flat video monitors - * are associated to {@linkplain CartesianCS cartesian CS} while planetarium may be - * associated to {@linkplain SphericalCS spherical CS}. Axis units are typically (but - * are not restricted to) some linear units like 1/72 of inch. - *
- * This CRS can be implemented as a {@linkplain DerivedCRS derived CRS} based on the - * {@linkplain #getObjectiveCRS objective CRS}. In such implementations, the display - * CRS changes after every zoom or translation action. - * - * @return the display Coordinate Reference System. - */ - CoordinateReferenceSystem getDisplayCRS(); - - /** - * Returns the transform from {@linkplain #getObjectiveCRS objective} to - * {@linkplain #getDisplayCRS display} CRS. If the latter is implemented as - * a {@linkplain DerivedCRS derived CRS}, then this transform shall be equal - * to the following: - * - *
- * getDisplayCRS().{@linkplain DerivedCRS#getConversionFromBase getConversionFromBase()}.getMathTransform()
- *
- *
- * This transform is typically (but is not required to be) affine. When this transform is
- * affine, then the scale factors (the coefficients on the matrix diagonal when there is
- * no rotation or shear) are the map scale along the corresponding axis.
- *
- * @return the transform from {@linkplain #getObjectiveCRS objective} to
- * {@linkplain #getDisplayCRS display} CRS.
- */
- MathTransform getObjectiveToDisplayTransform();
-
- /**
- * Returns the transform from {@linkplain #getDisplayCRS display}
- * to {@linkplain #getObjectiveCRS objective} CRS. This is the
- * {@linkplain MathTransform#inverse inverse} of the
- * {@linkplain #getObjectiveToDisplayTransform objective to display transform}.
- *
- * @return the transform from {@linkplain #getDisplayCRS display} to
- * {@linkplain #getObjectiveCRS objective} CRS.
- */
- MathTransform getDisplayToObjectiveTransform();
-}
diff --git a/geoapi-pending/src/main/java/org/opengis/display/canvas/RenderingState.java b/geoapi-pending/src/main/java/org/opengis/display/canvas/RenderingState.java
deleted file mode 100644
index 2563180de..000000000
--- a/geoapi-pending/src/main/java/org/opengis/display/canvas/RenderingState.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * GeoAPI - Java interfaces for OGC/ISO standards
- * Copyright © 2008-2023 Open Geospatial Consortium, Inc.
- * http://www.geoapi.org
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.opengis.display.canvas;
-
-/**
- * Enumeration for possible rendering states of the canvas.
- *
- * @author Open Geospatial Consortium
- * @author Johann Sorel (Geomatys)
- * @since GeoAPI 2.2
- */
-public enum RenderingState {
- ON_HOLD,
- RENDERING
-}
diff --git a/geoapi-pending/src/main/java/org/opengis/display/container/ContainerEvent.java b/geoapi-pending/src/main/java/org/opengis/display/container/ContainerEvent.java
deleted file mode 100644
index 16e1017b7..000000000
--- a/geoapi-pending/src/main/java/org/opengis/display/container/ContainerEvent.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * GeoAPI - Java interfaces for OGC/ISO standards
- * Copyright © 2009-2023 Open Geospatial Consortium, Inc.
- * http://www.geoapi.org
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.opengis.display.container;
-
-import java.util.Collection;
-import java.util.EventObject;
-import org.opengis.display.primitive.Graphic;
-
-
-/**
- * Event sent to {@linkplain ContainerListener container listeners} when
- * a {@linkplain Graphic graphics} changed.
- *
- * @author Open Geospatial Consortium
- * @author Johann Sorel (Geomatys)
- * @since GeoAPI 2.2
- */
-public abstract class ContainerEvent extends EventObject {
- /**
- * Creates an event emitted by the given source.
- *
- * @param source The source, or {@code null} if unknown.
- */
- public ContainerEvent(GraphicsContainer source) {
- super(source);
- }
-
- /**
- * Returns the source of thie event.
- *
- * @return the source of this event, or {@code null} if unknown.
- */
- @Override
- public GraphicsContainer getSource() {
- return (GraphicsContainer) super.getSource();
- }
-
- /**
- * Returns the graphics affected by this event
- *
- * @return the graphics affected by this event.
- */
- public abstract Collection
- * Graphics can be {@linkplain Collection#add added} or {@linkplain Collection#remove removed} with
- * method invocations on the collection returned by {@link #graphics}, which is a "live" collection.
- * Note that a GraphicsContainer instance may restrict the acceptable graphic implementations.
- *
- * @author Open Geospatial Consortium
- * @author Johann Sorel (Geomatys)
- * @since GeoAPI 2.2
- */
-public interface GraphicsContainer When new graphics are {@linkplain Collection#add added}, implementations shall respect
- * the z-order. When two
- * added graphics have the same z-order, the most recently added one should be
- * on top.
- * It is an error to reference a {@link GraphicsContainer} in any way after its dispose method has been
- * called.
- */
- void dispose();
-}
diff --git a/geoapi-pending/src/main/java/org/opengis/display/primitive/Graphic.java b/geoapi-pending/src/main/java/org/opengis/display/primitive/Graphic.java
deleted file mode 100644
index 81f05f32b..000000000
--- a/geoapi-pending/src/main/java/org/opengis/display/primitive/Graphic.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * GeoAPI - Java interfaces for OGC/ISO standards
- * Copyright © 2004-2023 Open Geospatial Consortium, Inc.
- * http://www.geoapi.org
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.opengis.display.primitive;
-
-import org.opengis.display.container.GraphicsContainer;
-
-
-/**
- * Defines the root abstraction of a graphic object taxonomy. This base interface
- * specifies the methods common to a lightweight set of graphic objects.
- *
- * @author Open Geospatial Consortium
- * @author Johann Sorel (Geomatys)
- * @since GeoAPI 2.2
- */
-public interface Graphic {
- /**
- * Returns {@code true} if this graphic is visible.
- *
- * @return {@code true} if this graphic is visible.
- */
- boolean isVisible();
-
- /**
- * Sets whether this graphic should be visible.
- *
- * @param visible {@code true} if this graphic should be visible.
- */
- void setVisible(boolean visible);
-
- /**
- * Invoked by the {@linkplain GraphicsContainer container} when this graphic is no longer needed.
- * Implementations may use this method to release resources, if needed. Implementations
- * may also implement this method to return an object to an object pool. It is an error
- * to reference a {@code Graphic} in any way after its dispose method has been called.
- */
- void dispose();
-}
diff --git a/geoapi-pending/src/main/java/org/opengis/metadata/citation/CitationFactory.java b/geoapi-pending/src/main/java/org/opengis/metadata/citation/CitationFactory.java
deleted file mode 100644
index 6409f7ca9..000000000
--- a/geoapi-pending/src/main/java/org/opengis/metadata/citation/CitationFactory.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/*
- * GeoAPI - Java interfaces for OGC/ISO standards
- * Copyright © 2005-2023 Open Geospatial Consortium, Inc.
- * http://www.geoapi.org
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.opengis.metadata.citation;
-
-import java.net.URI;
-import java.util.Collection;
-import org.opengis.util.InternationalString;
-import org.opengis.annotation.Obligation;
-import org.opengis.util.Factory;
-
-
-/**
- * A factory for metadata from the citation package.
- * All factory methods accept null value for {@linkplain Obligation#OPTIONAL optional} arguments.
- * The value must be non-null for {@linkplain Obligation#MANDATORY mandatory} arguments.
- *
- * @version ISO 19115
- * @author Jesse Crossley (SYS Technologies)
- * @since GeoAPI 2.0
- */
-public interface CitationFactory extends Factory {
- /**
- * Location of the responsible individual or organization.
- *
- * @param deliveryPoints Address line for the location (as described in ISO 11180, Annex A).
- * @param city The city of the location.
- * @param administrativeArea State, province of the location.
- * @param postalCode ZIP or other postal code.
- * @param country Country of the physical address.
- * @param electronicMailAddresses Address of the electronic mailbox of the responsible organization or individual.
- * @return the address.
- */
- Address createAddress(
- Collection