Three-dimensional object movement and transformation processing apparatus for performing movement and transformation of an object in a three-diamensional space
First Claim
1. A three-dimensional object movement and transformation processing apparatus, comprising:
- shape storing means for storing shapes of a plurality of objects including a first object and a second object which are prescribed in shape prescription coordinate systems of a three-dimensional space;
Mwo matrix storing means for storing a plurality of transformation affine matrices Mwo which transform a world coordinate system of the three-dimensional space to the shape prescription coordinate systems prescribing the shapes of the objects stored in the shape storing means;
Mow matrix storing means for storing a plurality of transformation affine matrices Mow which transform the shape prescription coordinate systems prescribing the shapes of the objects stored in the shape storing means to the world coordinate system;
input means for inputting a piece of movement data designating an amount of a parallel translation, a rotational motion and an isotropic magnification or minification of the first object;
movement matrix generating means for generating movement matrices indicating the parallel translation, the rotational motion and the isotropic magnification or minification of the first object according to the movement data input to the input means;
affine matrix calculating means for calculating a transformation affine matrix Mow(new) relating to the first object moved or transformed according to the movement data by utilizing the movement matrices generated in the movement matrix generating means and a transformation affine matrix Mow which relates to the first object not moved nor transformed and is stored in the Mow matrix storing means, the transformation affine matrix Mow(new) being stored in the Mow matrix storing means to replace the transformation affine matrix Mow with the transformation affine matrix Mow(new);
an inverse matrix calculating apparatus for calculating an inverse matrix Mow-1 (new) of the transformation affine matrix Mow(new) stored in the Mow matrix storing means, the inverse matrix calculating apparatus comprisingaffine matrix dividing means for dividing the transformation affine matrix Mow(new) into a minor matrix Q indicating the rotational motion and the isotropic magnification or minification of the first object and a position vector p indicating the parallel translation of the first object,transposed matrix calculating means for calculating a transposed matrix Qt of the minor matrix Q divided in the affine matrix dividing means,vector-matrix multiplying means for multiplying the position vector p divided in the affine matrix dividing means by the transposed matrix Qt calculated in the transposed matrix calculating means to produce a vector pQt and changing a sign of the matrix pQt to produce a multiplied vector -pQt,inner product calculating means for calculating a squared product of an absolute value of an axial vector composing the minor matrix Q as a squared rate of the isotropic magnification or minification,dividing means for dividing each of components of the transposed matrix Qt calculated in the transposed matrix calculating means and each of components of the multiplied vector -pQt obtained in the vector-matrix multiplying means by the squared product calculated in the inner product calculating means, andinverse affine matrix arranging means for arranging the transposed matrix Qt divided by the squared product in the dividing means as a minor matrix of the inverse matrix Mow-1 (new) and arranging the multiplied vector -pQt divided by the squared product in the dividing means as a position vector of the inverse matrix Mow-1 (new) to produce the inverse matrix Mow-1 (new) having the minor matrix Qt divided by the squared product and the position vector -pQt divided by the squared product, the inverse matrix Mow-1 (new) being stored in the Mwo matrix storing means as a transformation affine matrix Mwo(new) relating to the first object moved or transformed to replace a transformation affine matrix Mwo which is stored in the Mwo matrix storing means and relates to the first object not moved nor transformed with the inverse matrix Mow-1 (new);
inter-object processing means for transforming the shape prescription coordinate systems prescribing the shapes of the first and second objects stored in the shape storing means to the world coordinate system according to a transformation affine matrix Mow of the second object and the transformation affine matrix Mow(new) of the first object stored in the Mow matrix storing means, changing the shapes of the first and second objects prescribed in the world coordinate system to processed shapes while incorporating an inter-object relationship between the first and second objects in the processed shapes, transforming the world coordinate system prescribing the processed shapes of the first and second objects to the shape prescription coordinate systems of the first and second objects according to a transformation affine matrix Mwo of the second object and the transformation affine matrix Mwo(new) of the first object stored in the Mwo matrix storing means, and replacing the shapes of the first and second objects stored in the shape storing means with the processed shapes of the first and second objects prescribed in the shape prescription coordinate systems; and
displaying means for displaying the processed shapes of the first and second objects stored in the shape storing means.
1 Assignment
0 Petitions
Accused Products
Abstract
A three-dimensional object movement and transformation processing apparatus has a shape storing section for storing shapes of a plurality of three-dimensional objects, an affine matrix calculating section for calculating transformation affine matrices Mow indicating movement or transformation of the objects from shape prescription coordinate systems prescribing the shapes of the objects to a world coordinate system, an inverse matrix calculating section for calculating inverse matrices Mwo of the matrices Mow indicating movement or transformation of the objects from the world coordinate system to the shape prescription coordinate systems, and an inter-object processing section for changing shapes of a pair of objects overlapping with each other to processed shapes according to the matrices Mwo and Mow of the second objects to reflect an overlapping condition in the processed shapes. When movement data of a first object is input, matrices Mow and Mwo for the first object are renewed in the calculating sections, and shapes of the first object and a second object overlapping with the first object are renewed in the processing section and the storing section.
-
Citations
19 Claims
-
1. A three-dimensional object movement and transformation processing apparatus, comprising:
-
shape storing means for storing shapes of a plurality of objects including a first object and a second object which are prescribed in shape prescription coordinate systems of a three-dimensional space; Mwo matrix storing means for storing a plurality of transformation affine matrices Mwo which transform a world coordinate system of the three-dimensional space to the shape prescription coordinate systems prescribing the shapes of the objects stored in the shape storing means; Mow matrix storing means for storing a plurality of transformation affine matrices Mow which transform the shape prescription coordinate systems prescribing the shapes of the objects stored in the shape storing means to the world coordinate system; input means for inputting a piece of movement data designating an amount of a parallel translation, a rotational motion and an isotropic magnification or minification of the first object; movement matrix generating means for generating movement matrices indicating the parallel translation, the rotational motion and the isotropic magnification or minification of the first object according to the movement data input to the input means; affine matrix calculating means for calculating a transformation affine matrix Mow(new) relating to the first object moved or transformed according to the movement data by utilizing the movement matrices generated in the movement matrix generating means and a transformation affine matrix Mow which relates to the first object not moved nor transformed and is stored in the Mow matrix storing means, the transformation affine matrix Mow(new) being stored in the Mow matrix storing means to replace the transformation affine matrix Mow with the transformation affine matrix Mow(new); an inverse matrix calculating apparatus for calculating an inverse matrix Mow-1 (new) of the transformation affine matrix Mow(new) stored in the Mow matrix storing means, the inverse matrix calculating apparatus comprising affine matrix dividing means for dividing the transformation affine matrix Mow(new) into a minor matrix Q indicating the rotational motion and the isotropic magnification or minification of the first object and a position vector p indicating the parallel translation of the first object, transposed matrix calculating means for calculating a transposed matrix Qt of the minor matrix Q divided in the affine matrix dividing means, vector-matrix multiplying means for multiplying the position vector p divided in the affine matrix dividing means by the transposed matrix Qt calculated in the transposed matrix calculating means to produce a vector pQt and changing a sign of the matrix pQt to produce a multiplied vector -pQt, inner product calculating means for calculating a squared product of an absolute value of an axial vector composing the minor matrix Q as a squared rate of the isotropic magnification or minification, dividing means for dividing each of components of the transposed matrix Qt calculated in the transposed matrix calculating means and each of components of the multiplied vector -pQt obtained in the vector-matrix multiplying means by the squared product calculated in the inner product calculating means, and inverse affine matrix arranging means for arranging the transposed matrix Qt divided by the squared product in the dividing means as a minor matrix of the inverse matrix Mow-1 (new) and arranging the multiplied vector -pQt divided by the squared product in the dividing means as a position vector of the inverse matrix Mow-1 (new) to produce the inverse matrix Mow-1 (new) having the minor matrix Qt divided by the squared product and the position vector -pQt divided by the squared product, the inverse matrix Mow-1 (new) being stored in the Mwo matrix storing means as a transformation affine matrix Mwo(new) relating to the first object moved or transformed to replace a transformation affine matrix Mwo which is stored in the Mwo matrix storing means and relates to the first object not moved nor transformed with the inverse matrix Mow-1 (new); inter-object processing means for transforming the shape prescription coordinate systems prescribing the shapes of the first and second objects stored in the shape storing means to the world coordinate system according to a transformation affine matrix Mow of the second object and the transformation affine matrix Mow(new) of the first object stored in the Mow matrix storing means, changing the shapes of the first and second objects prescribed in the world coordinate system to processed shapes while incorporating an inter-object relationship between the first and second objects in the processed shapes, transforming the world coordinate system prescribing the processed shapes of the first and second objects to the shape prescription coordinate systems of the first and second objects according to a transformation affine matrix Mwo of the second object and the transformation affine matrix Mwo(new) of the first object stored in the Mwo matrix storing means, and replacing the shapes of the first and second objects stored in the shape storing means with the processed shapes of the first and second objects prescribed in the shape prescription coordinate systems; and displaying means for displaying the processed shapes of the first and second objects stored in the shape storing means. - View Dependent Claims (2, 3, 4)
-
-
5. A three-dimensional object movement and transformation processing apparatus comprising:
-
shape storing means for storing shapes of a plurality of objects including a first object which are prescribed in shape prescription coordinate systems of a three-dimensional space; Mwo matrix storing means for storing a plurality of transformation affine matrices Mwo which transform a world coordinate system of the three-dimensional space to the shape prescription coordinate systems prescribing the shapes of the objects stored in the shape storing mean; Mow matrix storing means for storing a plurality of transformation affine matrices Mow which transform the shape prescription coordinate systems prescribing the shapes of the objects stored in the shape storing means to the world coordinate system; input means for inputting a piece of movement data designating an amount of movement or transformation of the first object and inputting a piece of inter-object processing data designating changes of shapes of the first object and one or more second objects stored in the shape storing means while relating the changes of the shapes of the second objects to the change of the shape of the first object; movement matrix generating means for generating movement matrices indicating the movement or transformation of the first object according to the movement data input to the input means; affine matrix calculating means for calculating a transformation affine matrix Mow(new) relating to the first object moved or transformed according to the movement data by utilizing the movement matrices generated in the movement matrix generating means and a transformation affine matrix Mow which relates to the first object not moved nor transformed and is stored in the Mow matrix storing means, the transformation affine matrix Mow(new) being stored in the Mow matrix storing means to replace the transformation affine matrix Mow with the transformation affine matrix Mow(New); a first inverse matrix calculating apparatus for calculating an inverse matrix Mow-1 (new) of the transformation affine matrix Mow(new) stored in the Mow matrix storing means, the first inverse matrix calculating apparatus comprising first affine matrix dividing means for dividing the transformation affine matrix MOW(new) into a minor matrix Q indicating a linear transformation of the first object and a position vector p indicating a parallel translation of the first object, inverse matrix calculating means for calculating an inverse matrix Q-1 of the minor matrix Q divided in the first affine matrix dividing means, first vector-matrix multiplying means for multiplying the position vector p divided in the first affine matrix dividing means by the inverse matrix Q-1 calculated in the inverse matrix calculating means to produce a vector pQ-1 and changing a sign of the matrix pQ-1 to produce a multiplied vector -pQ-1, and first inverse affine matrix arranging means for arranging the inverse matrix Q-1 calculated in the inverse matrix calculating means as a minor matrix of the inverse matrix Mow-1 new) and arranging the multiplied vector -pQ-1 produced in the first vector-matrix multiplying means as a position vector of the inverse matrix Mow-1 (new) to produce the inverse matrix Mow-1 (new) having the minor matrix Q-1 and the position vector -pQ-1, the inverse matrix Mow-1 (new) being stored in the Mwo matrix storing means as a transformation affine matrix Mow/new) relating to the first object moved or transformed to replace a transformation affine matrix Mwo which is stored in the Mwo matrix storing means and relates to the first object not moved nor transformed with the inverse matrix Mow-1 (new); a second inverse matrix calculating apparatus for calculating a second inverse matrix Mow-1 (new) of the transformation affine matrix Mow(new) stored in the Mow matrix storing means, the second inverse matrix calculating apparatus comprising second affine matrix dividing means for dividing the transformation affine matrix Mow(new) into a minor matrix Q indicating a linear transformation of the first object and a position vector p indicating a parallel translation of the first object, first transposed matrix calculating means for calculating an transposed matrix Qt of the minor matrix Q divided in the second affine matrix dividing means, second vector-matrix multiplying means for multiplying the position vector p divided in the second affine matrix dividing means by the transposed matrix Qt calculated in the first transposed matrix calculating means to produce a vector pQt and changing a sign of the matrix pQ1 to produce a multiplied vector -pQ1, and second inverse affine matrix arranging means for arranging the transposed matrix Qt calculated in the first transposed matrix calculating means as a minor matrix of the second inverse matrix Mow-1 (new) and arranging the multiplied vector -pQt produced in the second vector-matrix multiplying means as a position vector of the second inverse matrix Mow-1 (new) to produce the second inverse matrix Mow-1 (new) having the minor matrix Qt and the position vector -pQt ; a third inverse matrix calculating apparatus for calculating a third inverse matrix Mow-1 (new) of the transformation affine matrix Mow(new) stored in the Mow matrix storing means, the third inverse matrix calculating apparatus comprising third affine matrix dividing means for dividing the transformation affine matrix Mow(new) into a minor matrix Q indicating a linear transformation of the first object and a position vector p indicating a parallel translation of the first object, second transposed matrix calculating means for calculating an transposed matrix Qt of the minor matrix Q divided in the third affine matrix dividing means, third vector-matrix multiplying means for multiplying the position vector p divided in the third affine matrix dividing means by the transposed matrix Qt calculated in the second transposed matrix calculating means to produce a vector pQt and changing a sign of the matrix pQt to produce a multiplied vector -pQt, inner product calculating means for calculating a squared product of an absolute value of an axial vector composing the minor matrix Q divided in the third affine matrix dividing means, dividing means for dividing each of components of the transposed matrix Qt calculated in the second transposed matrix calculating means and each of components of the multiplied vector -pQt obtained in the third vector-matrix multiplying means by the squared product calculated in the inner product calculating means, third inverse affine matrix arranging means for arranging the transposed matrix Qt divided by the squared product in the dividing means as a minor matrix of the third inverse matrix Mow-1 (new) and arranging the multiplied vector -pQt divided by the squared product in the dividing means as a position vector of the third inverse matrix Mow-1 (new); and demultiplexing means for transferring the transformation affine matrix Mow(new) stored in the Mow matrix storing means to the first inverse matrix calculating apparatus, the second inverse matrix calculating apparatus, or the third inverse matrix calculating apparatus according to the movement data input to the input means, the transformation affine matrix Mow(new) being transferred to the second inverse matrix calculating apparatus to send the second inverse matrix Mow-1 (new) arranged in the second inverse affine matrix arranging means to the Mwo matrix storing means as the transformation affine matrix Mwo(new) in cases where the movement or transformation of the first object designated by the movement data denotes both the parallel translation indicated by the position vector p and a rotational motion of the first object, the transformation affine matrix Mow(new) being transferred to the third inverse matrix calculating apparatus to send the third inverse matrix Mow-1 (new) arranged in the third inverse affine matrix arranging means to the Mwo matrix storing means as the transformation affine matrix Mwo(new) in cases where the movement or transformation of the first object designated by the movement data denotes the parallel translation indicated by the position vector p, a rotational motion of the first object, and an isotropic magnification or minification of the first object, and the transformation affine matrix Mow(new) being transferred to the first inverse matrix calculating apparatus in other cases to send the inverse matrix Mow-1 (new) arranged in the inverse affine matrix arranging means to the Mwo matrix storing means as the transformation affine matrix Mwo(new); inter-object processing means for transforming the shape prescription coordinate systems prescribing the shapes of the first and second objects stored in the shape storing means to the world coordinate system by utilizing the transformation affine matrices Mow including the transformation affine matrix Mow(new) stored in the Mow matrix storing means, changing the shapes of the first and second objects prescribed in the world coordinate system to processed shapes of the first and second objects while relating the changes of the shapes of the second objects to the change of the shape of the first object according to the inter-object processing data input to the input means, transforming the world coordinate system prescribing the processed shapes of the first and second objects to the shape prescription coordinate systems by utilizing the transformation affine matrices Mwo including the transformation affine matrix Mwo(new) stored in the Mwo matrix storing means, and replacing the shapes of the first and second objects stored in the shape storing means with the processed shapes of the first and second objects prescribed in the shape prescription coordinate systems; and displaying means for displaying the processed shapes of the objects stored in the shape storing means.
-
-
6. A three-dimensional object movement and transformation processing apparatus, comprising:
-
shape storing means for storing shapes of a plurality of objects including first and second objects which are prescribed in shape prescription coordinate systems of a three-dimensional space; Mwo matrix storing means for storing a plurality of transformation affine matrices Mwo which transform a world coordinate system of the three-dimensional space to the shape prescription coordinate systems prescribing the shapes of the objects stored in the shape storing means, a transformation affine matrix Mwa relating to the first object and a transformation affine matrix Mwb relating to the second object being stored in the Mwo matrix storing means; Mow matrix storing means for storing a plurality of transformation affine matrices Mow which transform the shape prescription coordinate systems prescribing the shapes of the objects stored in the shape storing means to the world coordinate system, a transformation affine matrix Maw relating to the first object and a transformation affine matrix Mbw relating to the second object being stored in the Mow matrix storing means; input means for inputting a piece of movement data designating an amount of a parallel translation, a rotational motion and an isotropic magnification or minification of the first and second objects, the first and second objects being moved together while maintaining a positional relationship between the first and second objects; movement matrix generating means for generating movement matrices indicating the parallel translation, the rotational motion and the isotropic magnification or minification of the second object according to the movement data input to the input means; affine matrix calculating means for calculating a transformation affine matrix Mbw(new) relating to the second object moved or transformed according to the movement data by utilizing the movement matrices generated in the movement matrix generating means and the transformation affine matrix Mbw stored in the Mow matrix storing means, calculating a transformation affine matrix Mab which transforms a shape prescription coordinate system Ca prescribing the first object to a shape prescription coordinate system Cb prescribing the second object by utilizing the transformation affine matrix Maw stored in the Mow matrix storing means and the transformation affine matrix Mwb stored in the Mwo matrix storing means, and calculating a transformation affine matrix Maw(new) relating to the first object moved or transformed according to the movement data by multiplying the transformation affine matrix Mab by the transformation affine matrix Mbw(new), the transformation affine matrices Maw(new), Mbw(new) being stored in the Mow matrix storing means to replace the transformation affine matrices Maw, Mbw with the transformation affine matrices Maw(new), Mbw(new); an inverse matrix calculating apparatus for calculating inverse matrices Maw-1 (new), Mbw-1 (new) of the transformation affine matrices Maw(new), Mbw(new) stored in the Mow matrix storing means one after another, the inverse matrix calculating apparatus comprising affine matrix dividing means for dividing the transformation affine matrix Mow(new) representing the matrices Maw(new), Mbw(new) into a minor matrix Q indicating the rotational motion and the isotropic magnification or minification of the first or second object and a position vector p indicating the parallel translation of the first or second object, transposed matrix calculating means for calculating a transposed matrix Qt of the minor matrix Q divided in the affine matrix dividing means, vector-matrix multiplying means for multiplying the position vector p divided in the affine matrix dividing means by the transposed matrix Qt calculated in the transposed matrix calculating means to produce a vector pQt and changing a sign of the matrix pQt to produce a multiplied vector -pQt, inner product calculating means for calculating a squared product of an absolute value of an axial vector composing the minor matrix Q as a squared rate of the isotropic magnification or minification, dividing means for dividing each of components of the transposed matrix Qt calculated in the transposed matrix calculating means and each of components of the multiplied vector -pQt obtained in the vector-matrix multiplying means by the squared product calculated in the inner product calculating means, and inverse affine matrix arranging means for arranging the transposed matrix Qt calculated in the transposed matrix calculating means as a minor matrix of an inverse matrix Mow-1 (new) of the transformation affine matrix Mow(new) and arranging the multiplied vector -pQt divided by the squared product in the dividing means as a position vector of the inverse matrix Mow-1 (new) to produce the inverse matrix Mow-1 (new) having the minor matrix Q-1 and the position vector -pQt, the inverse matrices Maw-1 (new) , Mbw-1 (new) represented by the inverted matrix Mow-1 (new) being stored in the Mwo matrix storing means as transformation affine matrices Mwa(new), Mwb(new) relating to the first and second objects moved or transformed to replace the transformation affine matrices Mwa, Mwb stored in the Mwo matrix storing means with the inverse matrices Maw-1 (new), Mbw-1 (new); picture drawing means for transforming the shape prescription coordinate systems prescribing the shapes of the first and second objects stored in the shape storing means to the world coordinate system according to the transformation affine matrices Maw(new), Mbw(new) stored in the Mow matrix storing means and drawing pictures of the first and second objects prescribed in the world coordinate system; and displaying means for displaying the pictures of the first and second objects drawn in the picture drawing means. - View Dependent Claims (7, 8, 9)
-
-
10. A three-dimensional object movement and transformation processing apparatus comprising:
-
shape storing means for storing shapes of a plurality of objects including first and second objects which are prescribed in shape prescription coordinate systems of a three-dimensional space; Mwo matrix storing means for storing a plurality of transformation affine matrices Mwo which transform a world coordinate system of the three-dimensional space to the shape prescription coordinate systems prescribing the shapes of the objects stored in the shape storing means, a transformation affine matrix Mwa relating to the first object and a transformation affine matrix Mwb relating to the second object being stored in the Mwo matrix storing means; Mow matrix storing means for storing a plurality of transformation affine matrices Mow which transform the shape prescription coordinate systems prescribing the shapes of the objects stored in the shape storing means to the world coordinate system, a transformation affine matrix Maw relating to the first object and a transformation affine matrix Mbw relating to the second object being stored in the Mow matrix storing means; input means for inputting a piece of movement data designating an amount of movement or transformation of the first and second objects and inputting a piece of inter-object processing data designating changes of shapes of the objects stored in the shape storing means while relating the changes of the shapes to each other, the first and second objects being moved together while maintaining a positional relationship between the first and second objects; movement matrix generating means for generating movement matrices indicating the movement or transformation of the second object according to the movement data input to the input means; affine matrix calculating means for calculating a transformation affine matrix Mbw(new) relating to the second object moved or transformed according to the movement data by utilizing the movement matrices generated in the movement matrix generating means and the transformation affine matrix Mbw stored in the Mow matrix storing means, calculating a transformation affine matrix Mab which transforms a shape prescription coordinate system Ca prescribing the first object to a shape prescription coordinate system Cb prescribing the second object by utilizing the transformation affine matrix Maw stored in the Mow matrix storing means and the transformation affine matrix Mwb stored in the Mwo matrix storing means, and calculating a transformation affine matrix Maw(new) relating to the first object moved or transformed according to the movement data by multiplying the transformation affine matrix Mab by the transformation affine matrix Mbw(new), the transformation affine matrices Maw(new), Mbw(new) being stored in the Mow matrix staring means to replace the transformation affine matrices Maw, Mbw with the transformation affine matrices Maw(new), Mbw(new); a first inverse matrix calculating apparatus for calculating inverse matrices Maw-1 (new), Mb-1 (new) of the transformation affine matrices MaW(new), Mbw(new) stored in the Mow matrix storing means one after another, the inverse matrix calculating apparatus comprising first affine matrix dividing means for dividing the transformation affine matrix Mow(new) representing the matrices Maw/new), Mbw(new) into a minor matrix Q indicating a linear transformation of the first or second object and a position vector p indicating a parallel translation of the first or second object, inverse matrix calculating means for calculating an inverse matrix Q-1 of the minor matrix Q divided in the first affine matrix dividing means, first vector-matrix multiplying means for multiplying the position vector p divided in the first affine matrix dividing means by the inverse matrix Q-1 calculated in the inverse matrix calculating means to produce a vector pQ-1 and changing a sign of the matrix pQ-1 to produce a multiplied vector -pQ-1, and first inverse affine matrix arranging means for arranging the inverse matrix Q-1 calculated in the inverse matrix calculating means as a minor matrix of an inverse matrix Mow-1 (new) of the transformation affine matrix Mow(new) and arranging the multiplied vector -pQ-1 produced in the first vector-matrix multiplying means as a position vector of the inverse matrix Mow-1 (new) to produce the inverse matrix Mow-1 (new) having the minor matrix Q-1 and the position vector -pQ-1, the inverse matrices Maw-1 (new), Mbw-1 (new) represented by the inverted matrix Mow-1 (new) being stored in the Mwo matrix storing means as transformation affine matrices Mwa(new), Mwb(new) relating to the first and second objects moved or transformed to replace the transformation affine matrices Mwa, Mwb stored in the Mwo matrix storing means with the inverse matrices Maw-1 (new), Mbw-1 (new); a second inverse matrix calculating apparatus for calculating a second inverse matrices Maw-1 (new), Mbw-1 (new) of the transformation affine matrices Maw(new), Mbw(new) stored in the Mow matrix storing means one after another, the second inverse matrix calculating apparatus comprising second affine matrix dividing means for dividing the transformation affine matrix Mow(new) (Maw(new) or Mbw(new)) relating to the first or second object into a minor matrix Q indicating a linear transformation of the first or second object and a position vector p indicating a parallel translation of the first or second object, first transposed matrix calculating means for calculating an transposed matrix Qt of the minor matrix Q divided in the second affine matrix dividing means, second vector-matrix multiplying means for multiplying the position vector p divided in the second affine matrix dividing means by the transposed matrix Qt calculated in the first transposed matrix calculating means to produce a vector pQt and changing a sign of the matrix pQt to produce a multiplied vector -pQt, and second inverse affine matrix arranging means for arranging the transposed matrix Qt calculated in the first transposed matrix calculating means as a minor matrix of the second inverse matrix Mow-1 and arranging the multiplied vector -pQt produced in the second vector-matrix multiplying means as a position vector of the second inverse matrix Mow-1 to produce the second inverse matrix Mow-1 having the minor matrix Qt and the position vector pQt ; a third inverse matrix calculating apparatus for calculating a third inverse matrices Maw-1 (new), Mbw-1 (new) of the transformation affine matrices Maw(new), Mbw(new) stored in the Mow matrix storing means one after another, the third inverse matrix calculating apparatus comprising third affine matrix dividing means for dividing the transformation affine matrix Mow(new) (Maw(new) or Mbw(new)) relating to the first or second object into a minor matrix Q indicating a linear transformation of the first or second object and a position vector p indicating a parallel translation of the first or second object, second transposed matrix calculating means for calculating an transposed matrix Qt of the minor matrix Q divided in the third affine matrix dividing means, third vector-matrix multiplying means for multiplying the position vector p divided in the third affine matrix dividing means by the transposed matrix Qt calculated in the second transposed matrix calculating means to produce a vector pQt and changing a sign of the matrix pQt to produce a multiplied vector -pQt, inner product calculating means for calculating a squared product of an absolute value of an axial vector composing the minor matrix Q divided in the third affine matrix dividing means, dividing means for dividing each of components of the transposed matrix Qt calculated in the second transposed matrix calculating means and each of components of the multiplied vector -pQt obtained in the third vector-matrix multiplying means by the squared product calculated in the inner product calculating means, third inverse affine matrix arranging means for arranging the transposed matrix Qt divided by the squared product in the dividing means as a minor matrix of the third inverse matrix Mow-1 and arranging the multiplied vector -pQt divided by the squared product in the dividing means as a position vector of the third inverse matrix Mow-1 ; demultiplexing means for transferring the transformation affine matrices Maw(new), Mbw(new) stored in the Mow matrix storing means to the first inverse matrix calculating apparatus, the second inverse matrix calculating apparatus, or the third inverse matrix calculating apparatus according to the movement data input to the input means, the transformation affine matrices Maw(new), Mbw(new) being transferred to the second inverse matrix calculating apparatus to send the second inverse matrices Maw-1 (new), Mbw-1 (new) arranged in the second inverse affine matrix arranging means to the Mwo matrix storing means as the transformation affine matrices Mwa(new), Mwb(new) in cases where the movement or transformation of the first or second object designated by the movement data denotes both the parallel translation indicated by the position vector p and a rotational motion of the first or second object, the transformation affine matrices Maw(new), Mbw (new) being transferred to the third inverse matrix calculating apparatus to send the third inverse matrices Maw-1 (new), Mbw-1 (new) arranged in the third inverse affine matrix arranging means to the Mwo matrix storing means as the transformation affine matrices Mwa(new), Mwb(new) in cases where the movement or transformation of the first or second object designated by the movement data denotes the parallel translation indicated by the position vector p, a rotational motion of the first or second object, and an isotropic magnification or minification of the first or second object, and the transformation affine matrices Maw(new), Mbw(new) being transferred to the first inverse matrix calculating apparatus in other cases to send the inverse matrices Maw-1 (new) , Mbw-1 (new) arranged in the inverse affine matrix arranging means to the Mwo matrix storing means as the transformation affine matrices Mwa(new), Mwb(new); inter-object processing means for transforming the shape prescription coordinate systems prescribing the shapes of the objects stored in the shape storing means to the world coordinate system by utilizing the transformation affine matrices Mow including the transformation affine matrices Maw(new), Mbw(new) stored in the Mow matrix storing means, changing the shapes of the objects prescribed in the world coordinate system to processed shapes of the objects while relating the changes of the shapes to each other according to the inter-object processing data input to the input means, transforming the world coordinate system prescribing the processed shapes of the objects to the shape prescription coordinate systems by utilizing the transformation affine matrices Mwo including the transformation affine matrices Mwa(new), Mwb(new) stored in the Mwo matrix storing means, and replacing the shapes of the objects stored in the shape storing means with the processed shapes of the objects prescribed in the shape prescription coordinate systems; and displaying means for displaying the processed shapes of the objects stored in the shape storing means.
-
-
11. A three-dimensional object movement and transformation processing apparatus, comprising:
-
shape vector storing means for storing shape vectors Po of a plurality of objects including first and second objects which are prescribed in shape prescription coordinate systems of a three-dimensional space, the shape vectors Po of the objects indicating shapes of the objects; Mwo matrix storing means for storing a plurality of transformation affine matrices Mwo which transform a world coordinate system of the three-dimensional space to the shape prescription coordinate systems prescribing the shapes of the objects stored in the shape vector storing means; Mow matrix storing means for storing a plurality of transformation affine matrices Mow which transform the shape prescription coordinate systems prescribing the shapes of the objects stored in the shape vector storing means to the world coordinate system; input means for inputting a piece of movement data designating an amount of a parallel translation, a rotational motion and an isotropic magnification or minification of the first object and inputting a piece of inter-object processing data designating both movement of the second object and changes of shapes of the objects stored in the shape vector storing means while relating the changes of the shapes to each other, the changes of the shapes being caused by the movement of the second object; movement matrix generating means for generating movement matrices indicating the parallel translation, the rotational motion and the isotropic magnification or minification of the first object according to the movement data input to the input means; processing coordinate system generating means for generating a processing coordinate system according to the inter-object processing data input to the input means to simplify the movement of the second object by prescribing the shape of the second object in the processing coordinate system; Mpw matrix calculating means for calculating a transformation affine matrix Mpw transforming the processing coordinate system generated in the processing coordinate system generating means to the world coordinate system; an inverse matrix calculating apparatus for calculating an inverse matrix Mow-1 of the transformation affine matrix Mow stored in the Mow matrix storing means and calculating an inverse matrix Mwp of the matrix Mpw calculated in the Mpw matrix calculating means, the inverse matrix calculating apparatus comprising affine matrix dividing means for dividing the transformation affine matrix Mow, or Mpw into a minor matrix Q indicating the rotational motion and the isotropic magnification or minification of the first object and a position vector p indicating the parallel translation of the first object, transposed matrix calculating means for calculating an transposed matrix Qt of the minor matrix Q divided in the affine matrix dividing means, vector-matrix multiplying means for multiplying the position vector p divided in the affine matrix dividing means by the transposed matrix Qt calculated in the transposed matrix calculating means to produce a vector pQt and changing a sign of the matrix pQt to produce a multiplied vector -pQt, inner product calculating means for calculating a squared product s*s of an absolute value of an axial vector composing the minor matrix Q divided in the affine matrix dividing means as a squared rate of the isotropic magnification or minification, the absolute value of the axial vector being set to 1 in the transformation affine matrix Mpw, dividing means for dividing each of components of the transposed matrix Qt calculated in the transposed matrix calculating means and each of components of the multiplied vector -pQt obtained in the vector-matrix multiplying means by the squared product s*s calculated in the inner product calculating means, and inverse affine matrix arranging means for arranging the transposed matrix Qt /(s*s) divided by the squared product s*s in the dividing means as a minor matrix of the inverse matrix Mow-1, or Mwp and arranging the multiplied vector -pQt /(s*s) divided by the squared product s*s in the dividing means as a position vector of the inverse matrix Mow-1, or Mwp to produce the inverse matrix Mow-1, or Mwp having the minor matrix Qt /(s*s) and the position vector -pQt /(s*s); affine matrix calculating means for calculating a transformation affine matrix Mow(new) relating to the first object moved or transformed according to the movement data input to the input means by utilizing the movement matrices generated in the movement matrix generating means and a transformation affine matrix Mow which relates to the first object and is stored in the Mow matrix storing means, calculating transformation affine matrices Mop transforming the shape prescription systems to the processing coordinate system by utilizing the matrices Mow stored in the Mow matrix storing means and the inverse matrix Mwp calculated in the inverse matrix calculating apparatus, and calculating transformation affine matrices Mpo transforming the processing coordinate system to the shape prescription systems by utilizing the transformation affine matrix Mpw calculated in the Mpw matrix calculating means and the matrices Mwo stored in the Mwo matrix storing means, the transformation affine matrix Mow(new) being stored in the Mow matrix storing means to replace the transformation affine matrix Mow stored in the Mow matrix storing means with the transformation affine matrix Mow(new), and an inverse matrix Mow-1 (new) of the transformation affine matrix Mow(new) stored in the Mow matrix storing means being calculated as a transformation affine matrix Mwo(new) in the inverse matrix calculating apparatus to replace a transformation affine matrix Mwo which relates to the first object and is stored in the Mwo matrix storing means with the transformation affine matrix Mwo(new); Mop and Mpo matrix storing means for storing the transformation affine matrices Mop, Mpo calculated in the affine matrix calculating means; shape vector transforming means for transforming the shape vectors Po of the objects stored in the shape vector storing means to transformed shape vectors Pp of the objects prescribed in the processing coordinate system by utilizing the transformation affine matrices Mop stored in the Mop and Mpo matrix storing means; inter-object processing means for changing the transformed shape vectors Pp of the objects transformed in the shape vector transforming means to processed/transformed shape vectors Pp'"'"' of the objects while relating the changes of the transformed shape vectors Pp to each other according to the inter-object processing data input to the input means, the processed/transformed shape vectors Pp'"'"' of the objects being transformed to processed shape vectors Po'"'"' of the objects prescribed in the shape prescribing coordinate systems in the shape vector transforming means by utilizing the transformation affine matrices Mpo stored in the Mop and Mpo matrix storing means, and the processed shape vectors Po'"'"' of the objects being stored in the shape vector storing means to replace the shape vectors Po of the objects with the processed shape vectors Po'"'"' of the objects; and displaying means for displaying the processed shape vectors Po'"'"' of the objects stored in the shape vector storing means. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A three-dimensional object movement and transformation processing apparatus, comprising:
-
shape vector storing means for storing shape vectors Po of a plurality of objects including first and second objects which are prescribed in shape prescription coordinate systems of a three-dimensional space, the shape vectors Po of the objects indicating shapes of the objects; Mwo matrix storing means for storing a plurality of transformation affine matrices Mwo which transform a world coordinate system of the three-dimensional space to the shape prescription coordinate systems prescribing the shapes of the objects stored in the shape vector storing means; Mow matrix storing means for storing a plurality of transformation affine matrices Mow which transform the shape prescription coordinate systems prescribing the shapes of the objects stored in the shape vector storing means to the world coordinate system; input means for inputting a piece of movement data designating an amount of movement or transformation of the first object and inputting a piece of inter-object processing data designating both movement of the second object and changes of shapes of the objects stored in the shape vector storing means while relating the changes of the shapes to each other, the changes of the shapes being caused by the movement of the second object; movement matrix generating means for generating movement matrices indicating the movement or transformation of the first object according to the movement data input to the input means; processing coordinate system generating means for generating a processing coordinate system according to the inter-object processing data input to the input means to simplify the movement of the second object by prescribing the shape of the second object in the processing coordinate system; Mpw matrix calculating means for calculating a transformation affine matrix Mpw transforming the processing coordinate system generated in the processing coordinate system generating means to the world coordinate system; an inverse matrix calculating apparatus for calculating an inverse matrix Mow-1 of the transformation affine matrix Mow stored in the Mow matrix storing means and calculating an inverse matrix Mwp of the matrix Mpw calculated in the Mpw matrix calculating means, the inverse matrix calculating apparatus comprising a general affine inverse matrix calculator comprising affine matrix dividing means for dividing the transformation affine matrix Mow, or Mpw into a minor matrix Q indicating a linear transformation of the first object and a position vector p indicating a parallel translation of the first object, inverse matrix calculating means for calculating an inverse matrix Q-1 of the minor matrix Q divided in the affine matrix dividing means, vector-matrix multiplying means for multiplying the position vector p divided in the affine matrix dividing means by the inverse matrix Q-1 calculated in the inverse matrix calculating means to produce a vector pQ-1 and changing a sign of the matrix pQ-1 to produce a multiplied vector -pQ-1, and inverse affine matrix arranging means for arranging the inverse matrix Q-1 calculated in the inverse matrix calculating means as a minor matrix of the inverse matrix Mow-1, or Mwp and arranging the multiplied vector -pQ-1 produced in the vector-matrix multiplying means as a position vector of the inverse matrix Mow-1, or Mwp to produce the inverse matrix Mow-1, or Mwp having the minor matrix Q-1 and the position vector -pQ-1, a rotational movement affine inverse matrix calculator comprising affine matrix dividing means for dividing the transformation affine matrix Mow, or Mpw into a minor matrix Q indicating a linear transformation of the first object and a position vector p indicating a parallel translation of the first object, the linear transformation indicated by the minor matrix Q denoting a rotational motion according to the movement data input to the input means, transposed matrix calculating means for calculating an transposed matrix Qt of the minor matrix Q divided in the affine matrix dividing means, vector-matrix multiplying means for multiplying the position vector p divided in the affine matrix dividing means by the transposed matrix Qt calculated in the transposed matrix calculating means to produce a vector pQt and changing a sign of the matrix pQt to produce a multiplied vector pQt, and inverse affine matrix arranging means for arranging the transposed matrix Qt calculated in the transposed matrix calculating means as a minor matrix of the inverse matrix Mow-1, or Mwp and arranging the multiplied vector -pQt produced in the vector-matrix multiplying means as a position vector of the inverse matrix Mow-1, or Mwp to produce the inverse matrix Mow-1, or Mwp having the minor matrix Qt and the position vector -pQt, a rotational movement and transformation affine inverse matrix calculator comprising affine matrix dividing means for dividing the transformation affine matrix Mow, or Mpw into a minor matrix Q indicating a linear transformation of the first object and a position vector p indicating a parallel translation of the first object, the linear transformation indicated by the minor matrix Q denoting a rotational motion and an isotropic magnification or minification according to the movement data input to the input means, transposed matrix calculating means for calculating an transposed matrix t Q of the minor matrix Q divided in the affine matrix dividing means, vector-matrix multiplying means for multiplying the position vector p divided in the affine matrix dividing means by the transposed matrix Qt calculated in the transposed matrix calculating means to produce a vector pQt and changing a sign of the matrix pQt to produce a multiplied vector -pQt, inner product calculating means for calculating a squared product s*s of an absolute value of an axial vector composing the minor matrix Q divided in the affine matrix dividing means as a squared rate of the isotropic magnification or minification, the absolute value of the axial vector being set to 1 in the transformation affine matrix Mpw, dividing means for dividing each of components of the transposed matrix Qt calculated in the transposed matrix calculating means and each of components of the multiplied vector -pQt obtained in the vector-matrix multiplying means by the squared product s*s calculated in the inner product calculating means, and inverse affine matrix arranging means for arranging the transposed matrix Qt /(s*s) divided by the squared product s*s in the dividing means as a minor matrix of the inverse matrix Mow-1, or Mwp and arranging the multiplied vector -pQt (s*s) divided by the squared product s*s in the dividing means as a position vector of the inverse matrix Mow-1, or Mwp to produce the inverse matrix Mow-1, or Mwp having the minor matrix Qt /(s*s) and the position vector pQt /(s*s); demultiplexing means for transferring the transformation affine matrices Mow, Mpw to the general affine inverse matrix calculator, the rotational movement affine inverse matrix calculator, or the rotational movement and transformation affine inverse matrix calculator according to the movement data input to the input means, the transformation affine matrices Mow, Mpw being transferred to the rotational movement affine inverse matrix calculator to selectively operate the rotational movement affine inverse matrix calculator in cases where the movement or transformation of the first object designated by the movement data denotes both the parallel translation indicated by the position vector p and the rotational motion of the first object, the transformation affine matrices Mow, Mpw being transferred to the rotational movement and transformation affine inverse matrix calculator to selectively operate the rotational movement and transformation affine inverse matrix calculator in cases where the movement or transformation of the first object designated by the movement data denotes the parallel translation indicated by the position vector p, the rotational motion of the first object, and the isotropic magnification or minification of the first object, and the transformation affine matrices Mow, Mpw being transferred to the general affine inverse matrix calculator to selectively operate the general affine inverse matrix calculator in other cases; affine matrix calculating means for calculating a transformation affine matrix Mow(new) relating to the first object moved or transformed according to the movement data input to the input means by utilizing the movement matrices generated in the movement matrix qenerating means and a transformation affine matrix Mow which relates to the first object and is stored in the Mow matrix storing means, calculating transformation affine matrices Mop transforming the shape prescription systems to the processing coordinate system by utilizing the matrices Mow stored in the Mow matrix storing means and the inverse matrix Mwp calculated in the inverse matrix calculating apparatus, and calculating transformation affine matrices Mpo transforming the processing coordinate system to the shape prescription systems by utilizing the transformation affine matrix Mpw calculated in the Mpw matrix calculating means and the matrices Mwo stored in the Mwo matrix storing means, the transformation affine matrix Mow(new) being stored in the Mow matrix storing means to replace the transformation affine matrix Mow stored in the Mow matrix storing means with the transformation affine matrix Mow(new), and an inverse matrix Mow-1 (new) of the transformation affine matrix Mow(new) stored in the Mow matrix storing means being calculated as a transformation affine matrix Mwo(new) in the inverse matrix calculating apparatus to replace a transformation affine matrix Mwo which relates to the first object and is stored in the Mwo matrix storing means with the transformation affine matrix Mwo(new); Mop and Mpo matrix storing means for storing the transformation affine matrices Mop, Mpo calculated in the affine matrix calculating means; shape vector transforming means for transforming the shape vectors Po of the objects stored in the shape vector storing means to transformed shape vectors Pp of the objects prescribed in the processing coordinate system by utilizing the transformation affine matrices Mop stored in the Mop and Mpo matrix storing means; inter-object processing means for changing the transformed shape vectors Pp of the objects transformed in the shape vector transforming means to processed/transformed shape vectors Pp'"'"' of the objects while relating the changes of the transformed shape vectors Pp to each other according to the inter-object processing data input to the input means, the processed/transformed shape vectors Pp'"'"' of the objects being transformed to processed shape vectors Po'"'"' of the objects prescribed in the shape prescribing coordinate systems in the shape vector transforming means by utilizing the transformation affine matrices Mpo stored in the Mop and Mpo matrix storing means, and the processed shape vectors Po'"'"' of the objects being stored in the shape vector storing means to replace the shape vectors Po of the objects with the processed shape vectors Po'"'"' of the objects; and displaying means for displaying the processed shape vectors Po'"'"' of the objects stored in the shape vector storing means.
-
-
17. A three-dimensional object movement and transformation processing apparatus for processing a processing object with a robot arm in a three-dimensional space, comprising:
-
shape storing means for storing a shape of the robot arm prescribed in a first shape prescription coordinate system of the three-dimensional space and a shape of the processing object prescribed in a second shape prescription coordinate system of the three-dimensional space; Mow matrix storing means for storing a first transformation affine matrix Mrw which transforms the first shape prescription coordinate system prescribing the shape of the robot arm to a world coordinate system of the three-dimensional space and a second transformation affine matrix Msw which transforms the second shape prescription coordinate system prescribing the shape of the processing object to the world coordinate system; Mwo matrix storing means for storing a third transformation affine matrix Mwr which transforms the world coordinate system to the first shape prescription coordinate system prescribing the shape of the robot arm and a fourth transformation affine matrix Mws which transforms the world coordinate system to the second shape prescription coordinate system prescribing the shape of the processing object; input means for inputting a piece of movement data designating an amount of movement of the robot arm or the processing object and inputting a piece of inter-object processing data instructing the robot arm to process the processing object; movement matrix generating means for generating movement matrices indicating the movement of the robot arm or the processing object according to the movement data input to the input means; affine matrix calculating means for calculating a transformation affine matrix Mrw(new), or Msw(new) relating to the robot arm or the processing object moved according to the movement data by utilizing the movement matrices generated in the movement matrix generating means and the first or second transformation affine matrix Mrw, or Msw stored in the Mow matrix storing means, the transformation affine matrix Mrw(new), or Msw(new) being stored in the Mow matrix storing means to replace the first or second transformation affine matrix Mrw, or Msw with the transformation affine matrix Mrw(new), or Msw(new); a first inverse matrix calculating apparatus for calculating an inverse matrix Mrw-1 (new), or Msw-1 (new) of the transformation affine matrix Mrw(new), or Msw(new) stored in the Mow matrix storing means, the first inverse matrix calculating apparatus comprising first affine matrix dividing means for dividing the transformation affine matrix Mrw(new), or Msw(new) into a minor matrix Q indicating a linear transformation of the robot arm or the processing object and a position vector p indicating a parallel translation of the robot arm or the processing object, inverse matrix calculating means for calculating an inverse matrix Q-1 of the minor matrix Q divided in the first affine matrix dividing means, first vector-matrix multiplying means for multiplying the position vector p divided in the first affine matrix dividing means by the inverse matrix Q-1 calculated in the inverse matrix calculating means to produce a vector pQ-1 and changing a sign of the matrix pQ-1 to produce a multiplied vector -pQ-1, and first inverse affine matrix arranging means for arranging the inverse matrix Q-1 calculated in the inverse matrix calculating means as a minor matrix of the inverse matrix Mrw-1 (new), or Msw-1 (new) and arranging the multiplied vector -pQ-1 produced in the first vector-matrix multiplying means as a position vector of the inverse matrix Mrw-1 (new), or Msw-1 (new) to produce the inverse matrix Mrw.sup.-1 (new), or Msw-1 (new) having the minor matrix Q-1 and the position vector -pQ-1, the inverse matrix Mrw-1 (new), or Msw-1 (nw) being stored in the Mwo matrix storing means as a transformation affine matrix Mwr(new), or Mws(new) relating to the robot arm or the processing object moved according to the movement data to replace the third or fourth transformation affine matrix Mwr, or Mws stored in the Mwo matrix storing means with the transformation affine matrix Mwr(new), or Mws(new); a second inverse matrix calculating apparatus for calculating a second inverse matrix Mrw-1 (new), or Msw-1 (new) of the transformation affine matrix Mrw(new), or Msw(new) stored in the Mow matrix storing means, the second inverse matrix calculating apparatus comprising second affine matrix dividing means for dividing the transformation affine matrix Mrw(new), or Msw(new) into a minor matrix Q indicating a linear transformation of the robot arm or the processing object and a position vector p indicating a parallel translation of the robot arm or the processing object, first transposed matrix calculating means for calculating an transposed matrix Qt of the minor matrix Q divided in the second affine matrix dividing means, second vector-matrix multiplying means for multiplying the position vector p divided in the second affine matrix dividing means by the transposed matrix Qt calculated in the first transposed matrix calculating means to produce a vector pQt and changing a sign of the matrix pQt to produce a multiplied vector -pQt, and second inverse affine matrix arranging means for arranging the transposed matrix Qt calculated in the first transposed matrix calculating means as a minor matrix of the second inverse matrix Mrw-1 (new), or Msw-1 (new) and arranging the multiplied vector -pQt produced in the second vector-matrix multiplying means as a position vector of the second inverse matrix Mrw-1 (new), or Msw-1 (new) to produce the second inverse matrix Mrw-1 (new), or Msw-1 (new) having the minor matrix Qt and the position vector -pQt ; a third inverse matrix calculating apparatus for calculating a third inverse matrix Mrw-1 (new), or Msw-1 (new) of the transformation affine matrix Mrw(new), or Msw(new) stored in the Mow matrix storing means, the third inverse matrix calculating apparatus comprising third affine matrix dividing means for dividing the transformation affine matrix Mrw(new), or Msw(new) into a minor matrix Q indicating a linear transformation of the robot arm or the processing object and a position vector p indicating a parallel translation of the robot arm or the processing object, second transposed matrix calculating means for calculating an transposed matrix Qt of the minor matrix Q divided in the third affine matrix dividing means, third vector-matrix multiplying means for multiplying the position vector p divided in the third affine matrix dividing means by the transposed matrix Qt calculated in the second transposed matrix calculating means to produce a vector pQt and changing a sign of the matrix pQt to produce a multiplied vector -pQt, inner product calculating means for calculating a squared product of an absolute value of an axial vector composing the minor matrix Q divided in the third affine matrix dividing means, dividing means for dividing each of components of the transposed matrix Qt calculated in the second transposed matrix calculating means and each of components of the multiplied vector -pQt obtained in the third vector-matrix multiplying means by the squared product calculated in the inner product calculating means, third inverse affine matrix arranging means for arranging the transposed matrix Qt divided by the squared product in the dividing means as a minor matrix of the third inverse matrix Mrw-1 (new), or Msw-1 (new) and arranging the multiplied vector -pQt divided by the squared product in the dividing means as a position vector of the third inverse matrix Mrw-1 (new), or Msw-1 (new); and demultiplexing means for transferring the transformation affine matrix Mrw(new), or Msw(new) stored in the Mow matrix storing means to the first inverse matrix calculating apparatus, the second inverse matrix calculating apparatus, or the third inverse matrix calculating apparatus according to the movement data input to the input means, the transformation affine matrix Mrw(new), or Msw(new) being transferred to the second inverse matrix calculating apparatus to send the second inverse matrix Mrw-1 (new), or Msw-1 (new) arranged in the second inverse affine matrix arranging means to the Mwo matrix storing means as the transformation affine matrix Mwr(new), or Mws(new) in cases where the movement or transformation of the robot arm or the processing object designated by the movement data denotes both the parallel translation indicated by the position vector p and a rotational motion of the robot arm or the processing object, the transformation affine matrix Mrw(new), or Msw(new) being transferred to the third inverse matrix calculating apparatus to send the third inverse matrix Mrw-1 (new), or Msw-1 (new) arranged in the third inverse affine matrix arranging means to the Mwo matrix storing means as the transformation affine matrix Mwr(new), or Mws(new) in cases where the movement or transformation of the robot arm or the processing object designated by the movement data denotes the parallel translation indicated by the position vector p, a rotational motion of the robot arm or the processing object, and an isotropic magnification or minification of the robot arm or the processing object, and the transformation affine matrix Mrw(new), or Msw(new) being transferred to the first inverse matrix calculating apparatus in other cases to send the inverse matrix Mrw-1 (new), or Msw-1 (new) arranged in the inverse affine matrix arranging means to the Mwo matrix storing means as the transformation affine matrix Mwr(new), or Mws(new); inter-object processing means for calculating a transformation affine matrix Msr by utilizing the transformation affine matrix Msw(new), or Msw stored in the Mow matrix storing means and the transformation affine matrix Mwr(new), or Mwr stored in the Mwo matrix storing means, transforming the second shape prescription coordinate system prescribing the shape of the processing object to the first shape prescription coordinate system to determine a position of the processing object in the first shape prescription coordinate system by utilizing the transformation affine matrix Msr, and adopting the position of the processing object in the first shape prescription coordinate system as an amount of movement required of the robot arm to process the processing object; robot control means for generating a control signal according to the amount of movement adopted in the inter-object processing means to move the robot arm; and robot driving means for moving the robot arm by the amount of movement under control of the control signal generated in the robot control means.
-
-
18. A three-dimensional object movement and transformation processing apparatus for processing a processing object with a robot arm in a three-dimensional space, comprising:
-
shape storing means for storing a shape of the robot arm prescribed in a first shape prescription coordinate system of the three-dimensional space and a shape of the processing object prescribed in a second shape prescription coordinate system of the three-dimensional space; Mow matrix storing means for storing a first transformation affine matrix Mrw which transforms the first shape prescription coordinate system prescribing the shape of the robot arm to a world coordinate system of the three-dimensional space and a second transformation affine matrix Msw which transforms the second shape prescription coordinate system prescribing the shape of the processing object to the world coordinate system; Mwo matrix storing means for storing a third transformation affine matrix Mwr which transforms the world coordinate system to the first shape prescription coordinate system prescribing the shape of the robot arm and a fourth transformation affine matrix Mws which transforms the world coordinate system to the second shape prescription coordinate system prescribing the shape of the processing object; input means for inputting a piece of movement data designating an amount of a parallel translation, a rotational motion and an isotropic magnification or minification of the robot arm or the processing object and inputting a piece of inter-object processing data instructing the robot arm to process the processing object; movement matrix generating means for generating movement matrices indicating the movement of the robot arm or the processing object according to the movement data input to the input means; affine matrix calculating means for calculating a transformation affine matrix Mrw(new), or Msw(new) relating to the robot arm or the processing object moved according to the movement data by utilizing the movement matrices generated in the movement matrix generating means and the first or second transformation affine matrix Mrw, or Msw stored in the Mow matrix storing means, the transformation affine matrix Mrw(new), or Msw(new) being stored in the Mow matrix storing means to replace the first or second transformation affine matrix Mrw, or Msw with the transformation affine matrix Mrw(new), or Msw(new); an inverse matrix calculating apparatus for calculating an inverse matrix Mrw-1 (new), or Msw-1 (new) of the transformation affine matrix Mrw(new), or Msw(new) stored in the Mow matrix storing means, the inverse matrix calculating apparatus comprising affine matrix dividing means for dividing the transformation affine matrix Mrw(new), or Msw(new) into a minor matrix Q indicating the rotational motion and the isotropic magnification or minification of the robot arm or the processing object and a position vector p indicating the parallel translation of the robot arm or the processing object, transposed matrix calculating means for calculating a transposed matrix Qt of the minor matrix Q divided in the affine matrix dividing means, vector-matrix multiplying means for multiplying the position vector p divided in the affine matrix dividing means by the transposed matrix Qy calculated in the transposed matrix calculating means to produce a vector pQt and changing a sign of the matrix pQt to produce a multiplied vector pQt, inner product calculating means for calculating a squared product of an absolute value of an axial vector composing the minor matrix Q as a squared rate of the isotropic magnification or minification, dividing means for dividing each of components of the transposed matrix Qt calculated in the inverse matrix calculating means and each of components of the multiplied vector pQt obtained in the vector-matrix multiplying means by the squared product calculated in the inner product calculating means, and inverse affine matrix arranging means for arranging the transposed matrix Qt divided by the squared product in the dividing means as a minor matrix of the inverse matrix Mrw-1 (new), or Msw-1 (new) and arranging the multiplied vector -pQt divided by the squared product in the dividing means as a position vector of the inverse matrix Mrw-1 (new), or Msw-1 (new) to produce the inverse matrix Mrw-1 (new), or Msw-1 (new) having the minor matrix Qt and the position vector -pQt, the inverse matrix Mrw-1 (new), or Msw-1 (new) being stored in the Mwo matrix storing means as a transformation affine matrix Mwr(new), or Mws(new) relating to the robot arm or the processing object moved according to the movement data to replace the third or fourth transformation affine matrix Mwr, or Mws stored in the Mwo matrix storing means with the transformation affine matrix Mwr(new), or Mws(new); inter-object processing means for calculating a transformation affine matrix Msr by utilizing the transformation affine matrix Msw(new), or Msw stored in the Mow matrix storing means and the transformation affine matrix Mwr(new), or Mwr stored in the Mwo matrix storing means, transforming the second shape prescription coordinate system prescribing the shape of the processing object to the first shape prescription coordinate system to determine a position of the processing object in the first shape prescription coordinate system by utilizing the transformation affine matrix Msr, and adopting the position of the processing object in the first shape prescription coordinate system as an amount of a parallel translation, a rotational motion and an isotropic magnification or minification required of the robot arm to process the processing object; robot control means for generating a control signal according to the amount of the parallel translation, the rotational motion and the isotropic magnification or minification adopted in the inter-object processing means to move the robot arm; and robot driving means for moving the robot arm by the amount of the parallel translation, the rotational motion and the isotropic magnification or minification under control of the control signal generated in the robot control means. - View Dependent Claims (19)
-
Specification