Constructor
new Classe_Equivalence(_opt)
Constructeur
Parameters:
Name | Type | Description |
---|---|---|
_opt |
Object | [FACULTATIF] Options de création de la classe d'équivalence. L'objet complet est de la forme : {pos:..., couleur:..., bloque:...}, mais seuls les informations strictement nécessaires peuvent être renseignées. pos est de type Position (par défaut : l'origine de SCHEMA ) ; couleur est STRING ; bloque est un booléen (si la pièce est bloquée, référentiel, etc.) |
Extends
- createjs.Container
Members
_bloque :Boolean
Bloque la pièce (true) ou laisse la pièce mobile (false)
Type:
- Boolean
_couleur :String
Couleur de la classe d'équivalence
Type:
- String
_historique :Array
Historique des positions (tableau de tableaux de la forme [[t0,x0,y0,theta0], [t1,x1,y1 .....]
Type:
- Array
_lastPosition :Position
Dernière position enregistrée (utile quand on veut réinitialier une simulation)
Type:
_listePoints :Array
Liste des points présents dans la classe d'équivalence
Type:
- Array
_longueurHistorique :Number
Nombre de position qu'on garde dans l'historique
Type:
- Number
_nom :String
Nom de la classe d'équivalence
Type:
- String
_repere :createjs.Container
Référence vers le repère initial de la classe d'équivalence (inclu dans le groupe annotations)
Type:
- createjs.Container
_selectionne :Boolean
Dit si la classe est actuellement sélectionnée
Type:
- Boolean
_type :String
Type d'objet ("classe")
Type:
- String
annotations :createjs.Container
Groupe graphique contenant les annotations (points, vecteurs, etc.).
Type:
- createjs.Container
images :createjs.Container
Groupe graphique contenant les images d'arrière plan de la classe d'équivalence.
Type:
- createjs.Container
liste_liaisons :Array
Liste de toutes les référence des demi-liaisons concernées par la classe
Type:
- Array
schema :createjs.Container
Groupe graphique contenant les schémas (liaisons, traites, etc.).
Type:
- createjs.Container
Methods
ajouteDemiLiaison(_demiLiaison, _center)
Fonction qui ajoute une demi-liaison
Parameters:
Name | Type | Description |
---|---|---|
_demiLiaison |
DemiLiaison | Référence vers l'objet "demi-liaison" |
_center |
Position | Position de la demi-liaison. |
ajouteImage(_image, _x, _y, _rot, _scale)
Fonction qui ajoute une image à la classe d'équivalence
Parameters:
Name | Type | Default | Description |
---|---|---|---|
_image |
String | Adresse de l'image à insérer | |
_x |
Number |
0
|
Coordonnées sur x (local à la classe d'équivalence) en pixel. Défaut : 0. |
_y |
Number |
0
|
Coordonnées sur y (local à la classe d'équivalence) en pixel. Défaut : 0. |
_rot |
Number |
0
|
Orientation de l'image (local à la classe d'équivalence) en degrés, sens horaire. Défaut : 0. |
_scale |
Number |
1
|
Échelle de l'image. Défaut : 1 |
ajoutePoint(_P, _pos)
Ajoute un point à la classe d'équivalence, en le "préparant" (mettre la bonne couleur, redresse le texte pour qu'il apparaisse droit, etc.)
Parameters:
Name | Type | Description |
---|---|---|
_P |
Point | Objet 'point' à placer. |
_pos |
Position | Position du point |
bloque(bopt) → {Boolean}
GETTER/SETTER - Permet de bloquer la pièce par rapport à la scène (=bâti). Si true, les coordonnées de la classe d'équivalence ne sont pas modifiées durant la simulation
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
b |
Boolean |
<optional> |
'true' si la classe est bloquée. 'false' sinon. |
Returns:
'true' si la classe est bloquée. 'false' sinon.
- Type
- Boolean
changePosition(pos)
Fonction qui modifie la position de la classe d'équivalence. Cela revient à modifier les membres x, y ou rotation,
mais en prenant en compte les éventuels effets d'échelle.
Parameters:
Name | Type | Description |
---|---|---|
pos |
Position | Position à prendre. |
COORD(copt) → {Position}
GETTER/SETTER - Coordonnées de la classe d'équivalence, dans les coordonnées locales (voir la classe schema)
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
c |
Position |
<optional> |
Position de la classe, de la forme {x:,y:,theta:} (en unité local et en radian dans le sens trigo) |
Returns:
Position de la classe, de la forme {x:,y:,theta:} (en unité local et en radian dans le sens trigo)
- Type
- Position
couleur(copt) → {String}
GETTER/SETTER - Couleur de la classe d'équivalence. Si modifiée, elle affecte les objets graphique enfants (lignes, cercles, liaisons, etc.) qui possède une méthode couleur() similaire
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
c |
String |
<optional> |
Couleur à stocker. |
Returns:
Couleur de la classe d'équivalence
- Type
- String
defloute()
Fonction qui défloute la classe d'équivalence
deselectionne()
Fonction désélectionne (qui retire la surbrillance, etc...)
dessineLigne(_P1, _P2) → {createjs.displayObject}
Fonction qui dessine un segment sur la classe d'équivalence
Parameters:
Name | Type | Description |
---|---|---|
_P1 |
Position | Position du point extrémité 1 |
_P2 |
Position | Position du point extrémité 2 |
Returns:
Référence vers la ligne (dessin) nouvellement créée.
- Type
- createjs.displayObject
echelle() → {Number}
Echelle (nombre de pixel correspondant à une unité). Pointe vers la valeur stockées dans la classe schéma.
Returns:
Echelle, en pixels.
- Type
- Number
floute()
Fonction qui floute la classe d'équivalence (Utile quand on sélectionne un autre classe d'équivalence)
getLocalPosition(_pos, _directopt) → {Object}
Cette méthode calcule les coordonnées d'une position _pos, dans le repère local de la classe d'équivalence (équivalent à convertPosition(), mais à destination de cette classe.)
Parameters:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
_pos |
Point | Position dont on souhaite connaître les coordonnées locale | ||
_direct |
Boolean |
<optional> |
false
|
true : les coordonnées seront données dans le repère direct du schéma (x vers la droite, y vers le haut), le tout à l'échelle de SCHEMA.echelle(). false : les coordonnées sont celles propre à createjs (y vers le bas, et unité en pixel) |
Returns:
Coordonnées du type {x:, y:, theta:, contexte: this, _uniteSI: }
- Type
- Object
getSourisLocal() → {Position}
Fonction qui renvoie les coordonnées de la souris captées par le schéma, dans les coordonnées locales de la classe d'équivalence
Returns:
Position de la souris en pixel (A VERIFIER)
- Type
- Position
getTorseurCinematique() → {Torseur}
Calcule le torseur cinématique instantané de la classe d'équivalence
Returns:
Torseur cinématique
- Type
- Torseur
getVRotation() → {Number}
Calcule la vitesse de rotation autour de l'axe normal au plan
Returns:
Vitesse de rotation (en rad/s mais je suis plus sûr)
- Type
- Number
historique(iopt) → {Position}
Renvoie la i-ème position en partant de la plus récente vers la plus vieille.
Si i absent : renvoie tout le vecteur.
i = 1 pour la position la plus récente
Parameters:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
i |
Number |
<optional> |
0
|
Numéro de la position que l'on souhaite récupérer |
Returns:
- Type
- Position
lastPosition() → {Position}
Renvoie la position précédemment enregistrée (avant simulation)
Returns:
- Type
- Position
longueurHistorique(lopt) → {Number}
GETTER/SETTER du nombre de derniers points que l'on enregistre.
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
l |
Number |
<optional> |
nombre de derniers points que l'on enregistre. |
Returns:
nombre de derniers points que l'on enregistre.
- Type
- Number
MAJ()
Fonction qui met à jour les enfants
nom(nopt) → {String}
GETTER/SETTER - Renvoie le numéro de la classe d'équivalence, stocké dans schema.classes
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
n |
String |
<optional> |
Nom de la classe à stocker. |
Returns:
Nom de la classe d'équivalence. Si chaîne vide, renvoie "Classe n°i" où i est le numéro de la classe.
- Type
- String
numero() → {Number}
Renvoie le numéro de la classe d'équivalence, stocké dans schema.classes
Returns:
Numéro de la classe
- Type
- Number
pushHistorique(_date, _x, _y, _theta)
Ajoute une position à l'historique (et supprime la plus vieille).
Parameters:
Name | Type | Description |
---|---|---|
_date |
Number | Date de l'enregistrement |
_x |
Number | Position sur x à enregitrer (en pixel) |
_y |
Number | Position sur y à enregitrer (en pixel) |
_theta |
Number | Orientation à enregistrer (en degrès, sens horaire) |
recentreOrigine()
Fonction qui décale l'origine de la pièce pour quelle soit au barycentre des liaisons (améliore le conditionnement de la matrice)
remplitSysteme(K, F)
Fonction qui remplit le système à résoudre
Parameters:
Name | Type | Description |
---|---|---|
K |
Matrix | Matrice du système K.U=F |
F |
Vector | Vecteur-second membre du sytème K.U=F |
restoreLastPosition()
Restore la position courante (après simulation, par exemple)
sauveLastPosition()
Enregistre la position courante (avant simulation, par exemple)
selectionne()
Fonction qui sélectionne la Classe d'équivalence (met en surbrillance en floutant les autres)
selectionneDeselectionne()
Fonction qui switch le mode sélectionné / désélectionné
supprimeDemiLiaison(_demiLiaison)
Fonction qui supprime la demi-liaison (si elle existe)
Parameters:
Name | Type | Description |
---|---|---|
_demiLiaison |
DemiLiaison | Référence vers l'objet "demi-liaison" à supprimer |
THETA(topt) → {Number}
GETTER/SETTER - Angle de rotation (en radian, dans le sens trigo)
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
t |
Number |
<optional> |
Angle de rotation (en radian, dans le sens trigo) |
Returns:
Angle de rotation (en radian, dans le sens trigo)
- Type
- Number
type() → {String}
GETTER du type d'objet (classe d'équivalence)
Returns:
- Type
- String
updateBounds()
Fonction qui recalcule les limites (Largeur / Hauteur) géométrique de la classe d'équivalence (creatjs.Container ne sait pas le faire tout seul)
X(posXopt) → {Number}
GETTER/SETTER - Coordonnée sur X de la classe d'équivalence, dans les coordonnées locales (voir la classe schema)
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
posX |
Number |
<optional> |
Coordonnées sur X en unité local. |
Returns:
Coordonnées sur X en unité local.
- Type
- Number
Y(posYopt) → {Number}
GETTER/SETTER - Coordonnée sur Y de la classe d'équivalence, dans les coordonnées locales (voir la classe schema)
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
posY |
Number |
<optional> |
Coordonnées sur Y en unité local (positif vers le haut). |
Returns:
Coordonnées sur Y en unité local (positif vers le haut).
- Type
- Number