Download presentation
Presentation is loading. Please wait.
Published byHeather Mitchell Modified over 8 years ago
1
Haptic Rendering Part 2 4/CY/B3 Part 1. Collision detection and response Nic Melder Part 2. Manipulation and polygon transitions Nic Melder
2
Friction Cone Algorithm GO – HIP α Force Vector to apply to Haptic Device Since Vector, will work in any number of dimensions (ie. 2D, 3D, 4D) Surface point (SP) god-object (GO) tan -1 n (surface normal) HIP move
3
Manipulation of Virtual Objects With multi-point haptics, require a method to allow for realworld/natural manipulation of virtual objects. Direction vector from HIP to GO is proportional to force applied by haptic interface to object. Summing all force vectors on the object gives the residual force in the object (including gravity etc.) Residual force is input to a suitable movement algorithm. 2 Types of manipulation – Translation & Rotation.
4
Residual Force Algorithm ● Sum of Forces in virtual object required for translation.. ● Object requires a mass. ● Point Mass model used ie. all forces act on the Centre of Mass. ● Residual Force in Object = Mass x Acceleration ● v new = v old + a Δt (where Δt = loop time of the control algorithm) ● p new = p old +v new Δt
5
Residual Torque Algorithm ● Sum of Torques in virtual object required for rotation. ● Object requires inertias along each of the primary axes. ● Inertia stored in Matrix form ie, in 3D ● Torque = r x f
6
● Residual Torque in object: ● Angular acceleration given by: ● Can simplify and use: ● Angular Velocity and Rotation Estimate is given by: Residual Torque Algorithm
7
Object Manipulation ● Calculate new position. ● Calculate new rotation. ● Note: Must calculate position first then rotation since the residual forces are calculated with respect to the original object rotation.
8
Haptic Rendering of Complex Shapes ● Convexity & Concavity – A Polygon is convex if all internal angles < 180 o. – A Polygon is concave if any internal angle > 180 o. – An edge is convex if the internal angle between the polygons < 180 o. – A vertex ● Totally convex if all the adjoining edges are convex. ● Totally concave if all the adjoining edges are concave. ● Partially convex/concave if the edges are mixed (ie. concave and convex).
9
Mesh Data Storage Structures ● Require a means to store how each vertex, edge, face is connected to the other vertices, edges, faces. ● Memory usage vs. processor usage. ● Hierarchical Mesh Database. ● Face Directed Connection Graph (FDCG).
10
Hierarchical Mesh Database Polyhedron Vertex Line Polygon Normal Normal Neighbours Normal Neighbours Neighbours Vertices Polygons Lines Polygons Vertices Lines
11
Face Directed Connection Graph ● Made from Nodes, Connections & corners. ● Node contains: – Face plane – Array of Connections ● Connection: – SharedVertices – ConnectedNodes – EdgeVector – ConnectionType – VoronoiPlanes – EndPlanes ● Corner Contains: – Vertex – Array of Connections v2 v3 v4v8 1 6 3 2 5 4 v1 v4 v2 v8 v3 v5 v6 v7 v1 v5 v6 v7 F1 = Top face F2 = Bottom face F3 = Right face F4 = Left face F5 = Front face F6 = Back face
12
(Pseudo) Voronoi Regions and End Planes ● A features Voronoi region is an area of space around the feature that is closest to that feature. ● Each triangular face has 3 associated voronoi planes that pass through each of the face’s edges perpendicular to the face. ● Each edge has 2 associated end planes, that pass through each of the edge’s vertices perpendicular to the edge.
13
State Transitions FS – F determined by collision algorithm. FS = Free-space F = Face E = Edge V = Vertex F FS E V
14
Face to Edge When GO crosses a voronoi plane associated with the face, the GO has crossed onto the associated edge. The GO is repositioned to lie on the edge. GO on Polygon 1 GO crosses plane that Polygon 2 lies on P2 P1 P2 P1 = God-object (GO) = Old God-object position = Voronoi Region associated with polygon 1 = Voronoi Region associated with polygon 2
15
Edge to Face When HIP crosses a voronoi plane, associated face becomes active. The GO does not need to be repositioned. = God-Object = HIP when edge should be active = HIP when face should be active = Face normal = Area where face should be active
16
Edge to Vertex to Edge ● Edge to Vertex – When GO crosses an end plane associated with the edge, the corresponding Vertex is made active. – The GO is repositioned onto the vertex. ● Vertex to Edge – When the HIP moves into the Edge voronoi region the corresponding edge is made active. ie. the HIP is behind both voronoi planes of the edge.
17
Edge to Free Space If the edge is acute and convex and the HIP is in front of one connected face plane and behind the other face plane. = God-Object attached to edge = Haptic Interaction Point = Face normal = Spring that force is directed along
18
Other Transitions ● Vertex to Face – Need to determine which faces are connected to vertex. – If HIP is behind all voronoi planes of a face, then face is made active. ● Vertex to Free Space, Edge to Free Space, Face to Free Space – If HIP is in front of all appropriate faces, a V/E/F to FS transition has occurred.
19
FCA when on an Edge w V1V1 SP Ev HIP V2V2 V 1, V 2 = Vertices defining the edge HIP = Haptic Interaction Point Ev = Edge vector SP = Surface Point
20
Smoothing Transitions ● When transition occurs, check to see if GO still needs to be moved on the next iteration. ● If it needs to move, rerun to reposition the GO until GO is no longer moved. ● Ie. In one iteration the following may happen: – Face to Edge to Face to Edge to Face to Edge. ● The Small Plane problem
21
References ● http://www.cyber.rdg.ac.uk/ISRG/haptics/ ● N. Melder, W. S. Harwin and P. M. Sharkey, Translation and Rotation of Multi-Point Contacted Virtual Objects, Proceedings of Eurohaptics Conference, 2003 ● W. S. Harwin and N. Melder, Improved Haptic Rendering for Multi-Finger Manipulation Using Friction Cone based God-Objects, Proceedings of Eurohaptics Conference, 2002 ● C. B. Zilles and J. K. Salisbury, A Constraint-based God-object Method for Haptic Display, Proceedings of International Conference on Intelligent Robots and Systems, 1995 ● C. Ho, C. Basdogan, M. A. Srinivasan, Efficient Point-Based Rendering Techniques for Haptic Display of Virtual Objects, Presence 8(5) Oct 1999 pp 477-491
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.