| fr.ign.cogit.geoxygene.spatial.geomprim.GM_Primitive fr.ign.cogit.geoxygene.spatial.geomprim.GM_OrientablePrimitive fr.ign.cogit.geoxygene.spatial.geomprim.GM_OrientableCurve fr.ign.cogit.geoxygene.spatial.geomprim.GM_Curve
All known Subclasses: fr.ign.cogit.geoxygene.spatial.coordgeom.GM_CurveSegment,
GM_Curve | public class GM_Curve extends GM_OrientableCurve (Code) | | Courbe. L'orientation vaut nécessairement +1, la primitive est self.
Une courbe est composée de un ou plusieurs segments de courbe.
Chaque segment à l'intérieur d'une courbe peut être défini avec une interpolation différente.
Dans la pratique nous n'utiliserons a priori que des polylignes comme segment(GM_LineString).
Modification de la norme suite au retour d'utilisation : on fait hériter GM_CurveSegment de GM_Curve.
Du coup, on n'implémente plus l'interface GM_GenericCurve.
author: Thierry Badard & Arnaud Braun version: 1.0 |
Field Summary | |
protected List | segment Liste de tous les segment de courbe (GM_CurveSegment) constituant self. |
segment | protected List segment(Code) | | Liste de tous les segment de courbe (GM_CurveSegment) constituant self.
|
GM_Curve | public GM_Curve()(Code) | | Constructeur par défaut
|
GM_Curve | public GM_Curve(GM_Curve curve)(Code) | | Usage interne. Utilisé en interne (dans les constructeurs publics) pour construire la courbe opposé,
qui est la primitive de proxy[1]. On définit ici les références nécessaires. Le but est de retrouver la propriete :
curve.getNegative().getPrimitive().getNegative().getPrimitive() = curve.
Les segment de la courbe sont calcule en dynamique lors de l'appel a la methode getNegative().
|
addSegment | public void addSegment(GM_CurveSegment value)(Code) | | Ajoute un segment en fin de liste sans vérifier la continuité du chaînage.
|
addSegment | public void addSegment(GM_CurveSegment value, double tolerance) throws Exception(Code) | | A TESTER.
Ajoute un segment en fin de liste en vérifiant la continuité du chaînage.
Capte une exception en cas de problème. Nécessité de passer une tolérance en paramètre.
|
addSegment | public void addSegment(int i, GM_CurveSegment value)(Code) | | Ajoute un segment au i-ème rang de la liste, sans vérifier la continuité du chaînage.
|
addSegmentTry | public void addSegmentTry(GM_CurveSegment value, double tolerance) throws Exception(Code) | | A TESTER.
Ajoute un segment en fin de liste en vérifiant la continuité du chaînage, et en retournant le segment si necessaire.
Capte une exception en cas de problème. Nécessité de passer une tolérance en paramètre.
|
asLineString | public GM_LineString asLineString(double spacing, double offset, double tolerance)(Code) | | Approximation linéaire d'une courbe avec les points de contrôle. Elimine les points doublons consécutifs
(qui apparaissent quand la courbe est composée de plusieurs segments).
Le paramètre spacing indique la distance maximum entre 2 points de contrôle ;
le paramètre offset indique la distance maximum entre la polyligne générée et la courbe originale.
Si ces 2 paramètres sont à 0, alors aucune contrainte n'est imposée.
Dans l'IMPLEMENTATION ACTUELLE : on impose que ces paramètres soient à 0.
Le paramètre tolérance est nécessaire pour éliminer les doublons. On peut passer 0.0.
Méthode d'implémentation de l'interface GM_GenericCurve.
|
coord | public DirectPositionList coord()(Code) | | Renvoie la liste des coordonnées d'une courbe sous forme d'une liste de DirectPosition .
|
endPoint | public DirectPosition endPoint()(Code) | | Retourne le DirectPosition du dernier point.
Différent de l'opérateur "boundary" car renvoie la valeur du point et non pas l'objet géométrique représentatif.
Méthode d'implémentation de l'interface GM_GenericCurve.
|
getSegment | public List getSegment()(Code) | | Renvoie la liste des segments.
|
removeSegment | public void removeSegment(GM_CurveSegment value)(Code) | | Efface de la liste le (ou les) segment passé en paramètre
|
removeSegment | public void removeSegment(int i)(Code) | | Efface le i-ème segment de la liste
|
setSegment | public void setSegment(int i, GM_CurveSegment value)(Code) | | Affecte un segment au i-ème rang de la liste
|
sizeSegment | public int sizeSegment()(Code) | | Renvoie le nombre de segment
|
startPoint | public DirectPosition startPoint()(Code) | | Retourne le DirectPosition du premier point.
Différent de l'opérateur "boundary" car renvoie la valeur du point et non pas l'objet géométrique représentatif.
Méthode d'implémentation de l'interface GM_GenericCurve.
|
validate | public boolean validate(double tolerance)(Code) | | A TESTER.
Vérifie le chaînage des segments. renvoie TRUE s'ils sont chaînés, FALSE sinon.
Nécessité de définir une tolérance.
|
Fields inherited from fr.ign.cogit.geoxygene.spatial.geomprim.GM_OrientablePrimitive | public int orientation(Code)(Java Doc)
|
Methods inherited from fr.ign.cogit.geoxygene.spatial.geomprim.GM_OrientablePrimitive | public int getOrientation()(Code)(Java Doc)
|
Fields inherited from fr.ign.cogit.geoxygene.spatial.geomprim.GM_Primitive | public Set complex(Code)(Java Doc)
|
|
|