I have some 3D points on a plane. The plane is defined by normal and constant. I need to work with the points in 2D and then convert them back to 3D. In order to convert the points to 2D I made a quaternion to rotate the plane to the xy-plane and I can transform the points with that (simply discarding the z-coord). After modifying the points in 2D I want to convert them back to 3D. I noticed that the same quaternion, if inverted, rotates the point back but I need to translate it too somehow, involving the plane's constant, but I don't know how to do that. Thanks!
How to convert from 2D points to 3D points on a plane?
45 views Asked by capr At
1
There are 1 answers
Related Questions in 3D
- Issues with a rotation gizmo and sign flips when converting back to euler angles
- coded one, but renderer renders two 3D models in three.js
- WorldToScreen function
- Sweep shape along 3D path in Python
- How to add another panel or window to the open3d.visualization.O3DVisualizer class? (In python open3d)
- How to estimate the memory size of a binary voxelized geometry?
- LibGDX Normal Textures Not Showing Up in 3D (Blender) Model Java
- A way to warp an image based on a map
- 3D surface won't show data on plotly
- Creating 3D python data from index sums of 2D data
- 3D graph in Rstudio (time vs intensity vs coefficient)
- Combining multiple plots with mayavi
- JavaFX 3D API does not work on all Android deivces
- Manual retargeting - How to compute target pose bone positions correctly?
- How do I dynamically change vertex colors using Direct3d 12 and Visual C++?
Related Questions in GEOMETRY
- WorldToScreen function
- Intersection of Cartesian Box and Polygon in 3D
- find point in inside polygon ..with mysql
- How do I find the line segments formed by the meeting of two sides of two polygons?
- How to create a pareto distribution prediction function?
- How to estimate the memory size of a binary voxelized geometry?
- Spacing out overlapping rectangles: how to translate pseudocode?
- Sympy manipulation of wedge products
- how to create a sector and check if some point is in it's area?
- Get third control point quadratic Bezier curve for parabola with given fucus and directrix, Lua
- CGSRegionRef: How is an arbitrary region represented as union of rects?
- Distribution of n number of equi-distant point in polygon
- Selecting suitable triangles to intersect with a line
- How to distribute n number of points into a svg polygon javascript
- How to offset a shaply polygon without chnaging corner shape
Related Questions in QUATERNIONS
- Issues with a rotation gizmo and sign flips when converting back to euler angles
- Unity rotating parent so that child's position matches with point
- Manual retargeting - How to compute target pose bone positions correctly?
- glMatrix 3.4 from quat to modeView rotation
- How to calculate angular acceleration in quaternion form?
- Quaternion to exponential map, can code be improved?
- Why doesn't Unity provide support for subtraction and addition operations between Quaternions?
- Quaternionf and mathematic java
- How to convert from 2D points to 3D points on a plane?
- Converting IMU coordinate to Unity Coordinate
- Camera calibration for Nuscenes dataset for Radar only
- How to get the camera's world coordinates by using relative position and orientation?
- SceneKit physicBody angularVelocity as local "body fixed" angular rates
- FPS camera - Quaternion + translation results in wrong transformation
- problem with the Majwick filter when processing data from the gyroscope
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Popular Tags
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
I assume that your plane is given in Hessian normal form, i.e., a point
xlies on the plane iff:with the unit normal
n.When you apply a rotation that aligns the plane parallel to the xy-plane to these points, they will have a z-component equal to
c. Hence, to convert back from 2D to 3D, you simply need to add a z-component ofcand apply the inverse rotation. Make sure that the above definition applies in your case. Sometimes, the formdot(n, x) + c = 0is used, which would produce a z-component of-c.Note that this procedure is functionally suitable but computationally heavy. An alternative is to define a 3D basis on the plane and convert between 3D and 2D with this basis. You can find an example in this answer.