<<prev file | next file >>    view single page | view frames    summary: fields | routine    details: routine

ToBeReviewed/TRIANGULATION/

triangule_c.pro

toptriangule_c

result = triangule_c(maskentree, COINMONTE=COINMONTE, COINDESCEND=COINDESCEND, BASIC=BASIC, KEEP_CONT=KEEP_CONT)

NAME:triangule_c PURPOSE:construit le tableau de triangulation. L''idee est de construire une liste de triangles qui relient les points entre eux. Ceci est fait automatiquement avec la fonction TRIANGULATE. ICI: on tient compte du fait que les points sont disposes sur une grille (reguliere ou pas, mais pas destructuree, cad que les points sont ecrits suivant une matrice rectangulaire). Un moyen tres simple de faire des triangles entre tous les points est alors: pour chaque point (i,j) de la matrice -sauf ceux de la derniere ligne et de la derniere colonne- on on appelle le rectangle (i,j) le rectangle forme par les 4 points (i,j), (i+1,j), (i,j+1), (i+1,j+1). Pour tracer tous les triangles, il suffit de tracer les 2 triangles contenus ds les rectangles (i,j) au passage on remarque que chaque rectangle (i,j) possede 2 diagonales (si si faites un dessin c''est vrai), il y a donc 2 choix possibles pour chaque rectangles qd on veut le couper en 2 triangles... C''est grace a ce choix que l''on va pouvoir tracer les cotes avec des angles droits. A chaque angle de cote remarquable par l''existance d''un unique point terre ou d''un unique point mer sur les 4 cotes d''un rectangle (i,j), il faut couper le rectangle suivant la diagonale qui qui passe par le point singulier. CATEGORY:pour faire de beaux graphiques masques CALLING SEQUENCE:res=triangule([mask]) INPUTS:optionnel:mask c''est le tableau 2d qui sevira a masquer le champ que l''on tracera apres avec CONTOUR, ...TRIANGULATION=triangule(mask) si cet argument n''est pas specifie, la function utilise tmask. KEYWORD PARAMETERS: /BASIC: specifie que le masque est sur une grille basice (utiliser pour la triangulation ds les coupes verticales et des hovmoellers) /KEEP_CONT: to keep the triangulation even on the continents COINMONTE=tableau, pour obtenir le tableau de "coins de terre montant" a traiter avec completecointerre.pro ds la variable tableau plutot que de la faire passer par la variable globale twin_corners_up. COINDESCEND=tableau cf COINMONTE OUTPUTS: res: tableau 2d (3,nbre de triangles). chaque ligne de res represente les indices des points constituants les sommets d''un triangle. cf. comment on trace les triangles ds dessinetri.pro COMMON BLOCKS: common.pro different.pro definetri.pro SIDE EFFECTS: RESTRICTIONS:les donnees dont un veut ensuite faire le contour doivent etre disposees dans une matrice. Par contre dans la matrice, la disposition des points peut ne pas etre irreguliere. Si les donnees sont disposees completement de facon irreguliere, utiliser TRIANGULE. EXAMPLE:

Parameters

maskentree       

Keywords

COINMONTE       

COINDESCEND       

BASIC       

KEEP_CONT       

Produced by IDLdoc 2.0.