source: ether_megapoli/trunk/service/implementation/gov2/noaa/pmel/sgt/Transform.java @ 192

Last change on this file since 192 was 192, checked in by vmipsl, 13 years ago

Servlet _ Contour en cours _ package gov2

File size: 2.7 KB
Line 
1/*
2 * $Id: Transform.java,v 1.5 2002/06/14 17:12:25 dwd Exp $
3 *
4 * This software is provided by NOAA for full, free and open release.  It is
5 * understood by the recipient/user that NOAA assumes no liability for any
6 * errors contained in the code.  Although this software is released without
7 * conditions or restrictions in its use, it is expected that appropriate
8 * credit be given to its author and to the National Oceanic and Atmospheric
9 * Administration should the software be included by the recipient as an
10 * element in other product development.
11 */
12
13package  gov.noaa.pmel.sgt;
14
15import java.beans.PropertyChangeListener;
16
17import gov.noaa.pmel.util.Range2D;
18import java.io.Serializable;
19
20/**
21 * <code>Transform</code> defines an interface for transformations between
22 * user and physical coordinates.
23 *
24 * @see AxisTransform
25 *
26 * @author Donald Denbo
27 * @version $Revision: 1.5 $, $Date: 2002/06/14 17:12:25 $
28 * @since 1.0
29 */
30public interface Transform extends Serializable {
31  /**
32   * Set physical coordinate range.
33   *
34   * @param p1 minimum value, physical coordinates
35   * @param p2 maximum value, physical coordinates
36   * @see LinearTransform
37   **/
38  public void setRangeP(double p1,double p2);
39  /**
40   * Set physical coordinate range.
41   *
42   * @param prange physcial coordinate range
43   * @see Range2D
44   * @see LinearTransform
45   **/
46  public void setRangeP(Range2D prange);
47  /**
48   * Get the physical coordinate range.
49   *
50   * @return physcial coordinate range
51   * @see Range2D
52   **/
53  public Range2D getRangeP();
54  /**
55   * Set the user coordinate range for double values.
56   *
57   * @param u1 minimum value, user coordinates
58   * @param u2 maximum value, user coordinates
59   * @see LinearTransform
60   **/
61  public void setRangeU(double u1,double u2);
62  /**
63   * Set the user coordinate range for double values.
64   *
65   * @param urange user coordinate range
66   * @see Range2D
67   * @see LinearTransform
68   **/
69  public void setRangeU(Range2D urange);
70  /**
71   * Get the user coordinate range for double values.
72   *
73   * @return user range
74   * @see Range2D
75   **/
76  public Range2D getRangeU();
77  /**
78   * Transform from user to physical coordinates.
79   *
80   * @param u user value
81   * @return physical value
82   */
83  abstract double getTransP(double u);
84  /**
85   * Transform from physical to user coordinates.
86   *
87   * @param p physical value
88   * @return user value
89   */
90  abstract double getTransU(double p);
91  /**
92   * Add listener for changes to transform properties.
93   * @since 2.0
94   */
95  public void addPropertyChangeListener(PropertyChangeListener listener);
96  /**
97   * Remove listener.
98   * @since 2.0
99   */
100  public void removePropertyChangeListener(PropertyChangeListener listener);
101}
102
Note: See TracBrowser for help on using the repository browser.