Repository navigation
fitur matrix transformation #27
Description
Activity
Yang mungkin perlu diprioritaskan kemungkinan besar:
- Rotasi Transformasi Linier 3D. Untuk kepentingan perputaran sumbu sign convention 3x3
Catatan (yang udah ada di uteuk):
- Masuk dalam Linear Transformation
- Origin tetap
- Grid sejajar dan spasi sama
- Kemungkinan besar akan ada manual.feid nya terkait sign convention general dan rotasi transformasi
- Penjelasan RGB, XYZ, def + CCW
- Disarankan saat dari str ke geo, diputar terhadap sumbu Y ccw270 supaya Y nya tetap (arah transversal,asumsi x selalu longitudinal di str).
Untuk yang 3D, bisa pakai ini, dibawah ini contoh untuk mengluarkan matrix rotasi tranformasi 3D terhadap sumbu Y CCW 270 degree,
=LAMBDA(dx, dy, dz, LET( anglex, RADIANS(dx), angley, RADIANS(dy), anglez, RADIANS(dz), cx, COS(anglex), sx, SIN(anglex), rotx, VSTACK( HSTACK(1, 0, 0), HSTACK(0, cx, -sx), HSTACK(0, sx, cx) ), cy, COS(angley), sy, SIN(angley), roty, VSTACK( HSTACK(cy, 0, -sy), HSTACK(0, 1, 0), HSTACK(sy, 0, cy) ), cz, COS(anglez), sz, SIN(anglez), rotz, VSTACK( HSTACK(cz, -sz, 0), HSTACK(sz, cz, 0), HSTACK(0, 0, 1) ), rotm, MMULT(MMULT(rotx, roty), rotz), rotm ) )(0, N18, 0)Catatan: untuk yang fungsi scale kayaknya akan di drop. karena gak perlu2 amat.
Untuk versi langsung masuk ke Module via advanced formula editor, atau pakai define name,
// --- Workbook module --- // A file of name definitions of the form: // name = definition; rot3d = LAMBDA(dx, dy, dz, LET( anglex, RADIANS(dx), angley, RADIANS(dy), anglez, RADIANS(dz), cx, COS(anglex), sx, SIN(anglex), rotx, VSTACK( HSTACK(1, 0, 0), HSTACK(0, cx, -sx), HSTACK(0, sx, cx) ), cy, COS(angley), sy, SIN(angley), roty, VSTACK( HSTACK(cy, 0, -sy), HSTACK(0, 1, 0), HSTACK(sy, 0, cy) ), cz, COS(anglez), sz, SIN(anglez), rotz, VSTACK( HSTACK(cz, -sz, 0), HSTACK(sz, cz, 0), HSTACK(0, 0, 1) ), rotm, MMULT(MMULT(rotx, roty), rotz), rotm ) ); rot2d = lambda( angle, take(rot3d(0,0,angle),2,2) );Kalau sudah diimplementasikan di gist.feid akan saya close.
Ini kemungkinan dibuat feidlambda.contrib aja. Berhubung kalau ngubah atau ngikutin fiako style guide jadi lama.
hasil diskusi kemarin, ternyata ini mau dibuat ulang atau refactoring sesuai style guidenya feidlambda ternyata. akan dibuatkan dan disesuaikan lagi.
Untuk yang ini, fungsi rot nya sudah benar, Tapi implementasi untuk kepentingan projection rotated axes, bisa pake rumus
transpose(R)*vdiskusi whiteboard terlampir disini (untuk tim fiako): https://fiako-my.sharepoint.com/:wb:/g/personal/taruma_sakti_team_fiako_engineering/EWfEpuTtQtZLl94WAGRVnyUB5ezLwnEenwKrhjkFDwCLFA?e=odRgJL
untuk pdfnya: matrix transformation.pdf
- addedfeidlambdaRelated Collection of Lambda by fiakodevRelated Collection of Lambda by fiakodevfeidmathfeidlambda for mathfeidlambda for mathand removedfeidlambdaRelated Collection of Lambda by fiakodevRelated Collection of Lambda by fiakodev
on May 4, 2023
Mungkin dalam waktu lama (tidak dekat) perlu diciptakan matrix transformasi 2D dan 3D. Untuk bisa ngebackup pemahaman terkait linear algebra. matrix rotasi ama matrix scale cukup mudah untuk diimplementasikan (2D).
Ini bisa diimplementasikan untuk rotasi sign convention yang sering ditemui saat cross-software dari struktur ke geotek.
Untuk saat ini, baru ini yang bisa dicoba