Note: This project is to be completed on top of an existing mini-application. Repo access will be provided.
Please see attached screenshots showing the project's current state. The project uses nextjs, zustand and @react-three/fiber.
Right now the project allows users to orbit/pan the camera, create and move points based on data in the store. When a point is clicked, its "editing" property is toggled, showing transformcontrols. We need to expand the functionality to cover, ideally in the following order:
1. A bugfix for an issue where three transformcontrols are rendered in an incorrect spot after moving a point.
2. When clicked, the image should allow the user to scale it (but not translate or rotate).
3. A straight line should be drawn, joining all points in order.
4. Add support for arcs:
- When point P3 is in editing mode and the line segment |P2 P3| is clicked, check if both P2 and P3 are on the same Z plane. If the Z is not equal, do nothing. If the Z is equal, convert that line to an arc, still between P2 and P3. Clicking the arc should return to a straight line.
- When an arc is in editing mode (which is when its "target" point is editing=true), display a new temporary point that allows the user to move the arc's center. This point should no longer be displayed when the arc isn't being edited.
- Double clicking the arc center point should toggle the arc between clockwise and counterclockwise.
- The center point of the arc must be constrained to the bisector line. It is perfectly acceptable to allow it to be dragged freely on the XY plane, and then "snapping it" to the line when the drag action is finished.
- The arc centerpoint should be saved in the store (similarly to how currently point position is saved, code for this can be copied). Arc's CW/CCW orientation should also be saved by setting "command" to G02 and G03 respectively.
- Arcs will *never* exist between points with nonequal Z. The application does not need to be prepared for this scenario.
Please reach out if you have any questions, I can provide access to the github repository if you would like to see the current application.
Hi Dear!
As an experienced WebGL expert who is well versed in [login to view URL], I have checked your job description and I am very interested in your project.
Can I see your current project?
My main experienced in [login to view URL] are developing a 3D environment, 3D configurator, and VR Tour.
Until now, I have done 20+ projects and one of them reached 2K+ users in the first week. I can show you my previous projects in the interview.
And I am very familiar with React.js and [login to view URL], so I believe that I can be your strong candidate.
So, if you didn't find out a suitable dev yet, please contact me to discuss more details.
Thanks, Timo.
$200 USD en 7 días
5,0 (2 comentarios)
4,0
4,0
13 freelancers están ofertando un promedio de $234 USD por este trabajo
Hi, I am very interesting in this project because I am familiar with React, Redux, Redux-saga, Next, Three.js.
I feel it's required some mathmatics algorithm in this project and I can do it.
I'd like to review your github repo.
Looking forward to having a long-term relationship with you.
Hope to discuss more details via private chat.
Regards.
Vadym K.
Hi there.
As a skilled web developer, I am good at React/next, three js.
With 8+ years of experience, I am sure I will complete this project in success and give you best result.
Thanks for your job posting.
Best Regards from Vyacheslav
Hello
I'm happy to meet you.
I carefully read description of your project.
I have rich experience with React.js/Three.js.
I am ready to start your project and can complete your project completely.
I would like to discuss in details.
I wait for your message.
Thank you.
Hi, dear! How are you today? (You need a great and fantastic site, don't you?). I understood what you want.
I think I am the right fit for your project because I have 9 years of rich experience in web development and I would like to work using React.js. I have already built many complex projects using React.js which is my major skill. So I am very confident in this role and I am free to start right now. I can work anytime you want. If you hire me, you will get the perfect result within a short time. Please discuss more details via chat.
Thanks, Sergey.