Applique une matrice 4x4, ou une liste de matrices appliquées de la première à la dernière, à une forme.
La matrice est en ordre colonne, la translation se trouve donc aux indices 12 à 14. Une matrice qui
étire ou cisaille est autorisée ; construisez les matrices avec les méthodes ...ToMatrix et combinez-les
avec multiplyTransforms. Une matrice que le noyau ne peut pas appliquer lève une erreur.
La forme et la matrice ou la liste de matrices
La forme transformée
const move = await bitbybit.occt.transforms.translationToMatrix({ translation: [10, 0, 0] });
const turn = await bitbybit.occt.transforms.rotationAxisAngleToMatrix({ axis: [0, 1, 0], angle: 90, center: [0, 0, 0] });
const placed = await bitbybit.occt.transforms.transformByMatrix({ shape: box, transformation: [turn, move] });
Applique la même matrice 4x4, ou liste de matrices appliquées de la première à la dernière, à plusieurs formes, comme
transformByMatrix le fait pour une seule.
Les formes et la matrice ou la liste de matrices
Les formes transformées, dans le même ordre
Lit le placement qu'une forme porte, la transformation stockée sur elle plutôt qu'intégrée dans sa géométrie, sous forme de matrice plus sa translation, son quaternion de rotation et son échelle uniforme.
Une forme placée avec align ou via un assemblage porte un tel placement ; la plupart des autres
méthodes d'ici intègrent le déplacement dans la géométrie, et une telle forme rapporte l'identité.
La forme à lire
La matrice, la translation, le quaternion sous forme [x, y, z, w] et l'échelle
Construit la matrice identité, la transformation qui ne change rien, comme point de départ pour en composer d'autres.
La matrice identité, en ordre colonne
Construit une seule matrice à partir d'une translation, de trois angles de rotation en degrés autour de X, Y et Z, et d'une échelle uniforme.
L'échelle est appliquée en premier, puis les rotations (Z d'abord, puis Y, puis X), puis la translation, ce qui est l'ordre utilisé par les placements d'assemblage. Toute partie omise est prise comme sans changement.
La translation, les trois angles de rotation en degrés et le facteur d'échelle
La matrice combinée, en ordre colonne
Replie une liste de matrices en une seule, appliquées de la première à la dernière, de sorte qu'une chaîne de déplacements devient une seule matrice.
Une matrice seule est renvoyée inchangée et une liste vide donne l'identité.
La matrice ou la liste de matrices
La matrice combinée, en ordre colonne
Inverse une matrice, donnant la transformation qui la défait : appliquer une matrice puis son inverse remet une forme là où elle était.
La matrice à inverser
La matrice inverse, en ordre colonne
Construit la matrice d'un déplacement d'un vecteur, en unités du modèle.
Le vecteur de translation
La matrice de translation, en ordre colonne
Construit la matrice d'une rotation d'un angle en degrés autour d'un axe, passant par l'origine ou par un point central facultatif.
La rotation suit la règle de la main droite autour de axis.
La direction de l'axe, l'angle en degrés et le point facultatif par lequel passe l'axe
La matrice de rotation, en ordre colonne
Construit la matrice d'une mise à l'échelle uniforme d'un facteur autour de l'origine ou d'un point central facultatif.
Le facteur et le point facultatif autour duquel mettre à l'échelle
La matrice d'échelle, en ordre colonne
Construit la matrice d'un miroir à travers un point, la transformation que mirrorAboutPoint applique.
Le point par rapport auquel faire le miroir
La matrice de miroir, en ordre colonne
Construit la matrice d'un miroir par rapport à une ligne, la transformation que mirror applique : l'axe passant par
origin le long de direction.
Un point sur l'axe et la direction de l'axe
La matrice de miroir, en ordre colonne
Construit la matrice d'un miroir par rapport à un plan, la transformation que mirrorAlongNormal applique : le
plan passant par origin avec la normale donnée.
Un point sur le plan et la normale du plan
La matrice de miroir, en ordre colonne
Construit la matrice de rotation d'un quaternion donné sous forme [x, y, z, w].
Le quaternion est d'abord normalisé, sa longueur n'a donc pas d'importance.
Le quaternion
La matrice de rotation, en ordre colonne
Applique transform à plusieurs formes, chacune avec sa propre translation, son axe de rotation, son angle
et son facteur d'échelle.
Toutes les listes doivent avoir la même longueur, sinon une erreur est levée.
Les formes et une translation, un axe de rotation, un angle en degrés et un facteur d'échelle par forme
Les formes transformées, dans le même ordre
Applique rotate à plusieurs formes, chacune autour de son propre axe passant par l'origine et de son propre
angle en degrés.
Toutes les listes doivent avoir la même longueur, sinon une erreur est levée.
Les formes et un axe et un angle par forme
Les formes tournées, dans le même ordre
Applique rotateAroundCenter à plusieurs formes, chacune avec son propre angle en degrés, son centre
et son axe.
Toutes les listes doivent avoir la même longueur, sinon une erreur est levée.
Les formes et un angle, un centre et un axe par forme
Les formes tournées, dans le même ordre
Applique align à plusieurs formes, chacune avec ses propres repères de départ et d'arrivée.
Toutes les listes doivent avoir la même longueur, sinon une erreur est levée.
Les formes et une origine de départ, une direction de départ, une origine d'arrivée et une direction d'arrivée par forme
Les formes alignées, dans le même ordre
Applique alignAndTranslate à plusieurs formes, chacune avec sa propre direction et son propre centre.
Toutes les listes doivent avoir la même longueur, sinon une erreur est levée.
Les formes et une direction et un centre par forme
Les formes placées, dans le même ordre
Applique translate à plusieurs formes, chacune de son propre vecteur.
Les deux listes doivent avoir la même longueur, sinon une erreur est levée.
Les formes et un vecteur de translation par forme
Les formes déplacées, dans le même ordre
Applique scale à plusieurs formes, chacune uniformément autour de l'origine de son propre facteur.
Les deux listes doivent avoir la même longueur, sinon une erreur est levée.
Les formes et un facteur par forme
Les formes mises à l'échelle, dans le même ordre
Applique scale3d à plusieurs formes, chacune avec ses trois propres facteurs et son centre.
Toutes les listes doivent avoir la même longueur, sinon une erreur est levée.
Les formes et un vecteur d'échelle et un centre par forme
Les formes mises à l'échelle, dans le même ordre
Applique mirror à plusieurs formes, chacune par rapport à son propre axe.
Toutes les listes doivent avoir la même longueur, sinon une erreur est levée.
Les formes et une origine et une direction d'axe par forme
Les formes en miroir, dans le même ordre
Applique mirrorAlongNormal à plusieurs formes, chacune par rapport à son propre plan.
Toutes les listes doivent avoir la même longueur, sinon une erreur est levée.
Les formes et une origine et une normale de plan par forme
Les formes en miroir, dans le même ordre
Met à l'échelle, tourne et déplace une forme en une seule fois : d'abord l'échelle autour de l'origine, puis la rotation autour d'un axe passant par l'origine, puis la translation.
Comme l'échelle et la rotation se font autour de l'origine, une forme qui ne s'y trouve pas
bascule aussi autour d'elle ; déplacez-la d'abord, ou utilisez rotateAroundCenter et scale3d pour un
centre choisi.
La forme, la translation, l'axe et l'angle de rotation en degrés, et le facteur d'échelle
La forme transformée
Tourne une forme autour d'un axe passant par l'origine, d'un angle en degrés.
La rotation suit la règle de la main droite : le pouce le long de axis, les doigts indiquent le
sens positif. Une forme éloignée de l'origine bascule autour d'elle ; rotateAroundCenter
tourne plutôt autour d'un point choisi.
La forme, la direction de l'axe et l'angle en degrés
La forme tournée
Tourne une forme autour d'un axe passant par un point choisi, d'un angle en degrés.
La forme est déplacée pour que le point se trouve à l'origine, tournée là selon la règle de la main droite
autour de axis, et ramenée.
La forme, l'angle en degrés, le point par lequel passe l'axe et la direction de l'axe
La forme tournée
Déplace une forme pour qu'un point et une direction sur elle atterrissent sur un autre point et une autre direction : le
repère fromOrigin avec fromDirection est porté sur toOrigin avec toDirection.
C'est la façon de poser une forme sur une surface ou de l'orienter le long d'une ligne : la forme est à la fois déplacée et tournée, jamais mise à l'échelle.
La forme, le point et la direction de départ, et le point et la direction d'arrivée
La forme alignée
Déplace une forme pour qu'un repère complet sur elle atterrisse sur un autre repère : un point, sa normale et un axe dans le plan de cette normale sont portés sur leurs cibles.
Là où align fixe une direction et laisse libre la rotation autour d'elle, ceci fixe aussi la
rotation, ce qui compte pour les formes qui ne sont pas rondes autour de leur axe.
La forme, le point, la normale et l'axe de départ, et le point, la normale et l'axe d'arrivée
La forme alignée
Tourne une forme pour que son axe Y pointe le long de direction, puis la déplace à center.
Les formes plates et les primitives de ce paquet sont construites sur le sol avec Y vers le haut, c'est donc le seul appel qui place n'importe laquelle d'entre elles : la direction devient leur nouveau haut, et le centre l'endroit où elles se posent.
La forme, la direction vers laquelle son axe Y doit pointer et le point où la déplacer
La forme placée
Déplace une forme d'un vecteur, en unités du modèle.
La forme et le vecteur de déplacement
La forme déplacée
Met une forme à l'échelle uniformément autour de l'origine d'un facteur.
Une forme éloignée de l'origine s'en éloigne ou s'en rapproche aussi ; scaleFromCenter met à l'échelle
autour d'un point choisi et scale3d met chaque axe à l'échelle de son propre facteur.
La forme et le facteur
La forme mise à l'échelle
Met une forme à l'échelle d'un facteur distinct le long de X, Y et Z, autour d'un point central choisi.
Des facteurs inégaux étirent la forme, ce qui transforme les cercles en ellipses et peut rendre les opérations ultérieures, comme les congés, plus lentes ou les faire échouer ; gardez les facteurs égaux quand la forme n'a besoin que de grandir.
La forme, les trois facteurs et le point autour duquel mettre à l'échelle
La forme mise à l'échelle
Met une forme en miroir par rapport à une ligne : l'axe passant par origin le long de direction.
Chaque point atterrit aussi loin derrière la ligne qu'il était devant, ce qui en 3D revient à un demi-tour autour de cet axe.
La forme, un point sur l'axe et la direction de l'axe
La forme en miroir
Met une forme en miroir par rapport à un plan donné par un point sur lui et sa normale.
C'est l'image miroir habituelle, celle dont une pièce symétrique a besoin ; le résultat est retourné au sens où une forme main gauche devient une forme main droite.
La forme, un point sur le plan de symétrie et la normale du plan
La forme en miroir
Met une forme à l'échelle uniformément autour d'un point choisi d'un facteur.
Le point reste où il est et tout le reste s'en éloigne ou s'en rapproche.
La forme, le facteur et le point autour duquel mettre à l'échelle
La forme mise à l'échelle
Met une forme en miroir à travers un point : chaque point de la forme atterrit aussi loin au-delà du point qu'il était avant lui, du côté opposé.
Le résultat est retourné, comme un miroir plan transforme une main gauche en main droite.
La forme et le point par rapport auquel faire le miroir
La forme en miroir
Tourne une forme autour de l'origine selon un quaternion donné sous forme [x, y, z, w].
Le quaternion est d'abord normalisé, sa longueur n'a donc pas d'importance. Les quaternions sont ce que les bibliothèques d'animation et de physique fournissent, cela évite donc de les convertir en axe et angle.
La forme et le quaternion
La forme tournée
Déplacer, tourner, mettre à l'échelle et mettre en miroir des formes OpenCascade, et construire les matrices 4x4 qui décrivent de tels mouvements. Chaque méthode renvoie une nouvelle forme et laisse l'entrée telle quelle. Les angles sont en degrés, les distances en unités du modèle, et un axe de rotation passe par l'origine sauf si une méthode prend un centre. Les matrices sont 16 nombres en ordre colonne (la translation se trouve aux indices 12 à 14) ; une liste de matrices est appliquée de la première à la dernière comme un seul mouvement combiné, ce qui est la façon dont
transformByMatrixet les constructeurs...ToMatrixs'assemblent.