Define the coordinates of the center of rotation c such


Assignment - Modelling Task

Instructions

There are two parts to this assignment. Part 1 is a compulsory question that all students must complete and is worth 30 points. Part 2 provides several questions and students must complete one (1) of these questions (20 points). You must complete a report containing your solutions to question 1, and one of questions 2 - 4. Please read the later section regarding submission requirements.

The questions in this assignment refer to an animation of a goblin bombardier. The video files for this animation are provided on CloudDeakin, under the Resources->Assessment->Assignment- Modelling Task->Goblin Animations folder. You should review these videos to gain an understanding of the animated scene and to help in your interpretation of the questions below.

Part 1:

Question 1

You are to create a mathematical model of the motion of the fire pot as it is swung in a circle by the goblin. Your model must describe the trajectory of the fire pot in the camera frame of reference: that is, provide and equation for the displacement of the fire pot, as a function of time t, the initial conditions of the motion and the rotation speed, ω (in revolutions per second), relative to the origin of the camera frame.

Consider the diagram below, which shows quantities relevant to the mathematical description of the problem.

2256_Figure.jpg

You must provide a derivation of your model - not simply a statement of the final equations - using the mathematics covered in this unit. Your derivation should contain all relevant mathematical working, and any necessary explanation of methods or algorithms as appropriate. It is suggested that you implement the following procedure to develop your model:

1) Create a coordinate system aligned to the plane of rotation.

a. Define the coordinates of the center of rotation, C, such that is between 1 and 1.5 meters above the ground (and located anywhere in the XY plane).

b. Define a unit normal vector to the plane of rotation, n^.

c. Determine a vector u^ that lies in the plane of rotation, that is both orthogonal to n^ and parallel to the ground plane of the world.

d. Obtain a third unit vector u^, that is orthogonal to both n^ and u^, such that you have a right-handed orthonormal basis {n^, u^, u^} aligned to the plane.

2) Determine a counter-clockwise parameterisation of a circle of radius r in your plane.

a. Determine a parametric equation (in parameter t) describing the angular position θ of point P (the position of the firepot) relative to the reference line u^. This equation should involve the initial angular displacement at t = 0 (i.e., θ0) and the angular speed ω, given in revolutions per second.

b. Using the basis vectors {u^, u^}, define the equation of the circle as a vector-valued function in the plane (which should involve angle θ).

c. Substitute your parametric equation for θ(t) to obtain coordinates of P in the plane, as a function of initial conditions r, θ0, ω and time t.

d. Use your coordinates in the plane to state a vector parametric equation for r(t), in the basis {n^, u^, u^}.

3) Obtain a vector-valued equation for the displacement of the firepot, in the camera frame of reference

a. Define either a set of equations, or a transformation matrix, to convert vectors from the basis {n^, u^, u^} to the external basis {i, j, k} of the world frame

b. Define either a set of equations, or a transformation matrix, to convert vectors from the basis {i, j, k} to the basis {f^, r^, d^}, being the forward, right and down orthonormal basis vectors of the camera frame.

c. Define the position of the camera in the world frame and use this to determine a vector c from the position of the camera to the center of rotation, C.

d. Convert both vectors c and r(t) into the camera frame and add them together, to obtain the equation for the displacement of the point P from the origin of the camera frame.

Part 2 Complete only ONE of the following questions:

Question 2:

a) Obtain an equation for the trajectory of the firepot, from the moment it is released until it would strike the ground, in the world frame of reference. This will require you to determine the initial conditions for the trajectory (position and velocity in the world frame) using your model developed in Part 1, and then use these to solve for the constants of integration when developing the trajectory equation.

b) Using your trajectory model, determine the following quantities as functions of the initial conditions (given as variable quantities):
1. maximum height reached by the firepot
2. maximum range of the firepot from the point of release

c) Determine the rotation speed and time t of release, such that your model from Part 1 would generate an initial position and velocity that would have the firepot acheive a height of 3 meters at a distance of at least 20 meters from the launch point.

Question 3:

The ground within the goblin scene is known as a terrain mesh: a set of polygons formed by points (called vertices) that are regularly spaced in their XY coordinates in the ground plane of the world frame, as in the image below (for example).

2263_Figure1.jpg

In this problem you are to define a small set of vertices as a section of a terrain mesh. These vertices should be regularly spaced in the XY plane, with varying heights. Create a set of triangles from these vertices and use your points to demonstrate the following:

a) Given values for the X and Y coordinates of a randomly chosen location within the boundary of the ground plane under your mesh (not a vertex location of the mesh), determine a method to find the triangle covering this point. Determine the height of the mesh at this location.

b) Choose two points on the ground plane under your mesh and define the line (in the XY plane) between these two points. Segment this line into a set of lines that lie under each of the triangles of the mesh above the line (blue segments below). For each line segment, determine the equation of a line in 3D space that lies in the mesh (green segments) and for which its projection into the ground plane is the given blue line segment.

1304_Figure2.jpg

c) Using your line segments that lie across the mesh, create a plot of height on the line segments above the ground plane, as a function of distance along the line. You should end up with a continuous curve that is piecewise linear.

Question 4:

Animation of the goblin mesh requires the definition of a skeleton, a set of connected virtual bones. The skeleton is given a bind pose (also called a rest pose), which is usually the pose associated with the character mesh when the character is modelled. This pose may be defined by a set of affine transformations, which are 4 × 4 matrices having the following form:

 

1782_Figure3.jpg

where R is a 3 × 3 rotation matrix and P is a 3 × 1 column vector. 0 is 1 × 3 row vector of zeros.

Affine transformations can be constructed to convert vectors and points from one frame of reference to another. For example, assume that we have two frames A and B with origins OA and OB respectively, with OB = OA + P being the coordinates of OB relative to OA. Additionally, assume that

R = [b^1 b^2 b^3]

where each column is a basis vector for frame B expressed in the basis of frame A.

Then for any point P(x, y, z)B given in coordinates for frame B, the coordinates of this point in frame A are given by

104_Figure4.jpg

Consider the following diagram depicting part of the goblin skeleton (hips, spine, shoulders, arms), in its rest pose:

1477_Figure5.jpg

The red dot represents the origin point of the goblin model. Each green dot represents the origin of the next bone in the skeleton, moving from the center of the goblin outward. The blue dot represents the goblins hand. Each bone has its own frame of reference, such that the origin of a bone has the coordinate (0,0,0) in its own frame. However, each bone origin has a defined position in the frame of reference of its parent bone in a chain.

Similarly, the hand has a position in the frame of reference of bone 3 above. If bone i has position Pi in the frame of reference of bone i - 1 and and the matrix Ri has columns that define the basis vectors of this bone, expressed in the basis of frame i - 1, then the affine transformation matrix

101_Figure6.jpg

can be used to transform the coordinates of points in frame i into coordinates of that point in frame i - 1. Subsequently, the position H of the goblin's hand expressed in the frame of bone 3 can be transformed into the goblins core frame of reference using the transformation sequence

23_Figure7.jpg

As an example we can create the first of these matrices as follows:

Assume that bone 0 has length L0 and that bone 1 is therefore anchored to bone 0 at position OB1 (0,0, L0). We could choose a basis for bone 1 as

r^1 = 0r^0 + 0f^0 - 1u^0

f^1 = 0r^0 + 1f^0 + 0u^0

u^1 = 1r^0 + 0f^0 + 0u^0

1711_Figure8.jpg

(which represents a rotation of frame 0 by 90° about the vector f^0 ). Thus, we obtain the first affine transformation matrix for the above chain as:

Using the above information and examples, complete the following:

a) Define the origin point for the goblin model as the point (0,0,0) in the goblin frame of reference and define orthonormal basis vectors for the goblin {r^0, f^0 , u^0}, indicating the right, forward and up directions for this core frame. Set these initially to align with the Standard Euclidean basis {i, j, k} of the world frame.

b) Define the set of transformations M1, M2 and M3 for bones 1 to 3 in the chain above. To do so you will need to select coordinates of each bone in its parent bone frame, as well as basis vectors for the bone. To simplify your model, ensure that the actual bone runs in the "up" direction for its frame (i.e., the end point of bone i has local coordinates (0,0, Li), where L is the length of the bone, so that this point defines the origin of the next bone in the chain in the current bone frame of reference. Choose appropriate basis vectors so that each bone has a right-handed orthonormal basis.

c) Use your transformation hierarchy to compute the position of the goblin hand, relative to the goblin center, in the rest pose.

d) Create a new pose for your goblin by adjusting the angle of each arm bone relative to its parent. This will require you to rotate the frame of reference for that bone, to generate a new transform matrix for that bone.

e) Using your new pose, compute the new position of the hand of the goblin relative to the goblin center.

Submission Requirements

You must submit a written report containing all relevant mathematical derivations and explanations for each question answered. Handwritten reports will be accepted, but MUST be legible and neatly laid out. These may be submitted to the Faculty office on your home campus, or mailed to the Unit

Chair (and must be post-marked no later than the submission deadline). Scanned copies or photographs of handwritten reports will NOT be accepted.

It is preferable for students to complete an electronic report using, for example, Microsoft Word. Word provides an equation editor that can be used to neatly write and format mathematical equations. Alternatively reports can be written in LaTeX (see, for example, Overleaf.com for a free online LaTeX editor and compilation system). Students may include hand drawn sketches or graphs in their report as images. Electronic reports must be submitted to the Dropbox on CloudDeakin no later than the deadline given at the top of this document.

Solution Preview :

Prepared by a verified Expert
Other Engineering: Define the coordinates of the center of rotation c such
Reference No:- TGS02299074

Now Priced at $85 (50% Discount)

Recommended (92%)

Rated (4.4/5)