Apparatus and method for determining whether objects will collide
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
G06G-007/48
G06G-007/00
출원번호
US-0313324
(2002-12-05)
발명자
/ 주소
Hooks,Charles Gordon
출원인 / 주소
International Business Machines Corporation
인용정보
피인용 횟수 :
3인용 특허 :
6
초록▼
A computer program for determining whether a plurality of objects will collide is disclosed. The program divides each object into surfaces, subsurfaces, and elements and computes normals for the elements and normals for each subsurface. The program calculates the dot products between the subsurface
A computer program for determining whether a plurality of objects will collide is disclosed. The program divides each object into surfaces, subsurfaces, and elements and computes normals for the elements and normals for each subsurface. The program calculates the dot products between the subsurface normals. If the dot product is negative, the program computes the relative subsurface vector between the two subsurfaces and calculates the dot product between the first subsurface normal and the relative subsurface vector to determine if there is a possible collision of elements. If that dot product is negative, then the program calculates the dot product for the elemental normals. If that dot product is negative, then the program calculates the relative elemental vector and calculates the dot product between the first elemental normal and the relative elemental vector. If that dot product is negative, then the two objects have collided.
대표청구항▼
What is claimed is: 1. A computer implemented process for simulating dynamic movement of two three-dimensional objects selected from a plurality of specified objects to determine whether the two three-dimensional objects will collide in a three-dimensional space comprising: using a computer having
What is claimed is: 1. A computer implemented process for simulating dynamic movement of two three-dimensional objects selected from a plurality of specified objects to determine whether the two three-dimensional objects will collide in a three-dimensional space comprising: using a computer having a memory and a collision detection program and the plurality of specified objects stored in the memory, performing the steps of; (a) responsive to a user selection of a first object and a second object from the plurality of specified objects; (b) designating a first object subsurface, a first object size, and a first object subsurface variance; (c) designating a second object subsurface, a second object size, and a second object subsurface variance; (d) calculating a first object subsurface normal for the first object subsurface; (e) calculating a second object subsurface normal for the second subsurface; (f) initializing a first object orientation, a first object position, and a first object velocity in the three dimensional space; (g) initializing a second object orientation, a second object position, and a second object velocity in the three dimensional space; (h) calculating a first dot product between the first object subsurface normal and the second object subsurface normal; (i) determining whether the dot product is negative; and (j) responsive to determining that the first dot product is negative, calculating a relative subsurface vector from the first object subsurface normal to the second object subsurface normal; (k) calculating a second dot product between the relative subsurface vector and the first object subsurface normal; (l) responsive to a determination that the second dot product is negative, calculating a third dot product of a first object subsurface individual elemental normal to a second object subsurface individual elemental normal; (m) responsive to a determination that the third dot product is negative, calculating a relative elemental vector from the first object elemental normal to the second object elemental normal; (n) calculating a fourth dot product of the relative elemental vector to the first object elemental normal; and (o) responsive to a determination that the fourth dot product is negative, providing a determination that the objects have collided. 2. The computer implemented process of claim 1 further comprising the step of: responsive to a determination that the first object and the second object have not collided, moving the first object and the second object through a time interval and determining a new first object orientation, a new first object position, a new second object orientation, and a new second object position, and repeating steps (h) through (o). 3. A computer program product, tangibly stored in a computer readable medium for simulating dynamic movement of two three-dimensional objects selected from a plurality of specified objects to determine whether the two three-dimensional objects will collide in a three-dimensional space comprising: instructions for causing a computer to perform the steps of; (a) responsive to a user selection a first object and a second object from the plurality of specified objects; (b) designating a first object subsurface, a first object size, and a first object subsurface variance; (c) designating a second object subsurface, a second object size, and a second object subsurface variance; (d) calculating a first object subsurface normal for the first object subsurface; (e) calculating a second object subsurface normal for the second subsurface; (f) initializing a first object orientation, a first object position, and a first object velocity in the three dimensional space; (g) initializing a second object orientation, a second object position, and a second object velocity in the three dimensional space; (h) calculating a first dot product between the first object subsurface normal and the second object subsurface normal; (i) determining whether the dot product is negative; and (j) responsive to determining that the first dot product is negative, calculating a relative subsurface vector from the first object subsurface normal to the second object subsurface normal; (k) calculating a second dot product between the relative subsurface vector and the first object subsurface normal; (l) responsive to a determination that the second dot product is negative, calculating a third dot product of a first object subsurface individual elemental normal to a second object subsurface individual elemental normal; (m) responsive to a determination that the third dot product is negative, calculating a relative elemental vector from the first object elemental normal to the second object elemental normal; (n) calculating a fourth dot product of the relative elemental vector to the first object elemental normal; and (o) responsive to a determination that the fourth dot product is negative, providing a determination that the objects have collided. 4. The computer program product of claim 3, further comprising: responsive to a determination that the first object and the second object have not collided, instructions for moving the first object and the second object through a time interval and determining a new first object orientation, a new first object position, a new second object orientation, and a new second object position, and repeating instructions (h) through (o). 5. A an apparatus for simulating dynamic movement of two three-dimensional objects selected from a plurality of specified objects to determine whether the two three-dimensional objects will collide in a three-dimensional space comprising: a computer having a memory; a collision detection program in the memory of the computer containing instructions to cause the computer to perform the action of: (a) responsive to a user selection of a first object and a second object from the plurality of specified objects; (b) designating a first object subsurface, a first object size, and a first object subsurface variance; (c) designating a second object subsurface, a second object size, and a second object subsurface variance; (d) calculating a first object subsurface normal for the first object subsurface; (e) calculating a second object subsurface normal for the second subsurface; (f) initializing a first object orientation, a first object position, and a first object velocity in the three dimensional space; (g) initializing a second object orientation, a second object position, and a second object velocity in the three dimensional space; (h) calculating a first dot product between the first object subsurface normal and the second object subsurface normal; (i) determining whether the dot product is negative; and (j) responsive to determining that the first dot product is negative, calculating a relative subsurface vector from the first object subsurface normal to the second object subsurface normal; (k) calculating a second dot product between the relative subsurface vector and the first object subsurface normal; (l) responsive to a determination that the second dot product is negative, calculating a third dot product of a first object subsurface individual elemental normal to a second object subsurface individual elemental normal; (m) responsive to a determination that the third dot product is negative, calculating a relative elemental vector from the first object elemental normal to the second object elemental normal; (n) calculating a fourth dot product of the relative elemental vector to the first object elemental normal; and (o) responsive to a determination that the fourth dot product is negative, providing a determination that the objects have collided. 6. The apparatus of claim 5 further comprising: responsive to a determination that the first object and the second object have not collided, moving the first object and the second object through a time interval and determining a new first object orientation, a new first object position, a new second object orientation, and a new second object position, and repeating steps (g) through (o).
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (6)
Devic Goran, Method and apparatus for dynamic object indentification after Z-collision.
Diefendorff Keith E. (Austin TX) Anderson William C. (Austin TX), Method for executing graphics Z-compare and pixel merge instructions in a data processor.
Stark Johan S. H. (Stockholm SEX), Method for preventing collision of two mutually movable bodies and an apparatus including an arrangement for preventing.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.