Patents by Inventor Samuel C. Sands

Samuel C. Sands has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 7425953
    Abstract: A method of assembling a composite image comprising generating three-dimensional data defining a non-stereo image, assigning a first screen portion to a first rendering node, assigning a second screen portion to a second rendering node, rendering, by the first rendering node, a left image portion from the three-dimensional data, rendering, by the second rendering node, a right image portion from the three-dimensional data, and sequentially assembling the left image portion and the right image portion into the composite image is provided.
    Type: Grant
    Filed: May 19, 2005
    Date of Patent: September 16, 2008
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Kevin T. Lefebvre, Howard D. Stroyan, Samuel C. Sands
  • Patent number: 7030876
    Abstract: A three-dimensional imaging system comprises a memory accessible by a processor and an immersion generator stored in the memory and adapted to acquire tracking data corresponding to a position and orientation of a viewer. The immersion generator is further adapted to obtain three-dimensional rendering calls from a non-immersive graphics application corresponding to an image model and generate a virtual representation of the image model using the tracking data and the three-dimensional rendering calls.
    Type: Grant
    Filed: December 4, 2002
    Date of Patent: April 18, 2006
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Daniel H. Bennett, Samuel C. Sands
  • Patent number: 6940525
    Abstract: A method and apparatus for processing primitives in a computer graphics display system. The apparatus comprises a graphics device which receives commands and data from a host computer of the computer graphics display system. The data includes clip coordinates which are perspective projected by the graphics device into window coordinates. The host computer of the computer graphics display system is programmed to execute a geometry processing pipeline which transforms object coordinates associated with a primitive into clip coordinates which are then delivered to the graphics device. The graphics device then performs perspective projection on the clip coordinates to transform the clip coordinates into window coordinates.
    Type: Grant
    Filed: September 12, 2002
    Date of Patent: September 6, 2005
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Roland M. Hochmuth, Samuel C. Sands, Larry J. Thayer, Gayani N. K. Gamage
  • Patent number: 6924799
    Abstract: A method of assembling a composite image comprising generating three-dimensional data defining a non-stereo image, assigning a first screen portion to a first rendering node, assigning a second screen portion to a second rendering node, rendering, by the first rendering node, a left image portion from the three-dimensional data, rendering, by the second rendering node, a right image portion from the three-dimensional data, and sequentially assembling the left image portion and the right image portion into the composite image is provided.
    Type: Grant
    Filed: February 28, 2002
    Date of Patent: August 2, 2005
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Kevin T. Lefebvre, Howard D. Stroyan, Samuel C. Sands
  • Publication number: 20040109022
    Abstract: A three-dimensional imaging system comprises a memory accessible by a processor and an immersion generator stored in the memory and adapted to acquire tracking data corresponding to a position and orientation of a viewer. The immersion generator is further adapted to obtain three-dimensional rendering calls from a non-immersive graphics application corresponding to an image model and generate a virtual representation of the image model using the tracking data and the three-dimensional rendering calls.
    Type: Application
    Filed: December 4, 2002
    Publication date: June 10, 2004
    Inventors: Daniel H. Bennett, Samuel C. Sands
  • Publication number: 20030160780
    Abstract: A method of assembling a composite image comprising generating three-dimensional data defining a non-stereo image, assigning a first screen portion to a first rendering node, assigning a second screen portion to a second rendering node, rendering, by the first rendering node, a left image portion from the three-dimensional data, rendering, by the second rendering node, a right image portion from the three-dimensional data, and sequentially assembling the left image portion and the right image portion into the composite image is provided.
    Type: Application
    Filed: February 28, 2002
    Publication date: August 28, 2003
    Inventors: Kevin T. Lefebvre, Howard D. Stroyan, Samuel C. Sands
  • Patent number: 6509905
    Abstract: A method and apparatus for processing primitives in a computer graphics display system. The apparatus comprises a graphics device which receives commands and data from a host computer of the computer graphics display system. The data includes clip coordinates which are perspective projected by the graphics device into window coordinates. The host computer of the computer graphics display system is programmed to execute a geometry processing pipeline which transforms object coordinates associated with a primitive into clip coordinates which are then delivered to the graphics device. The graphics device then performs perspective projection on the clip coordinates to transform the clip coordinates into window coordinates.
    Type: Grant
    Filed: November 12, 1998
    Date of Patent: January 21, 2003
    Assignee: Hewlett-Packard Company
    Inventors: Roland M. Hochmuth, Samuel C. Sands, Larry J. Thayer, Gayani N. K. Gamage
  • Publication number: 20030011621
    Abstract: A method and apparatus for processing primitives in a computer graphics display system. The apparatus comprises a graphics device which receives commands and data from a host computer of the computer graphics display system. The data includes clip coordinates which are perspective projected by the graphics device into window coordinates. The host computer of the computer graphics display system is programmed to execute a geometry processing pipeline which transforms object coordinates associated with a primitive into clip coordinates which are then delivered to the graphics device. The graphics device then performs perspective projection on the clip coordinates to transform the clip coordinates into window coordinates.
    Type: Application
    Filed: September 12, 2002
    Publication date: January 16, 2003
    Inventors: Roland M. Hochmuth, Samuel C. Sands, Larry J. Thayer, Gayani N.K. Gamage
  • Patent number: 6337689
    Abstract: A method of buffering graphics vertex commands adaptively. A minimally-formatted vertex values buffer is created. As vertex commands are received from application software, attribute values are stored in an attribute values buffer until a vertex coordinate command is received. Upon receipt of a vertex coordinate command, attribute values are copied from the attribute values buffer into the vertex values buffer. Whenever application software issues a vertex attribute command corresponding to an attribute type that is not currently reflected in the vertex values buffer format, the vertex values buffer is automatically reformatted to include the new attribute type. Thus, the vertex values buffer automatically adapts itself to the behavior of the application. Multiple primitives are buffered between flushes. First-call and subsequent-call versions of code are provided for vertex commands. At initialization, a dispatch table is populated with pointers to the first-call versions.
    Type: Grant
    Filed: April 3, 1999
    Date of Patent: January 8, 2002
    Assignee: Hewlett-Packard Company
    Inventors: Roland M Hochmuth, Samuel C Sands, Bradley Louis Saunders, Alan D Ward
  • Publication number: 20010045958
    Abstract: A method and apparatus for processing primitives in a computer graphics display system. The apparatus comprises a graphics device which receives commands and data from a host computer of the computer graphics display system. The data includes clip coordinates which are perspective projected by the graphics device into window coordinates. The host computer of the computer graphics display system is programmed to execute a geometry processing pipeline which transforms object coordinates associated with a primitive into clip coordinates which are then delivered to the graphics device. The graphics device then performs perspective projection on the clip coordinates to transform the clip coordinates into window coordinates.
    Type: Application
    Filed: November 12, 1998
    Publication date: November 29, 2001
    Applicant: HEWLETT-PACKARD COMPANY
    Inventors: ROLAND M. HOCHMUTH, SAMUEL C. SANDS, LARRY J. THAYER, GAYANI N.K. GAMAGE
  • Patent number: 6253222
    Abstract: A high-speed method for the compression and decompression of floating point numbers. The floating point numbers are biased using a predefined value and then stored in compressed format occupying less memory than that of the non-compressed floating point numbers. Decompression of the compressed floating point number follows a reverse process. These techniques are useful with applications in which the numbers to be compressed fall within a given range.
    Type: Grant
    Filed: October 31, 1998
    Date of Patent: June 26, 2001
    Assignee: Hewlett-Packard Company
    Inventors: Don W. Dyer, Samuel C Sands
  • Patent number: 6240431
    Abstract: A high-speed method for the compression and decompression of floating point numbers. The floating point numbers are biased using a predefined value and then stored in compressed format occupying less memory than that of the non-compressed floating point numbers. Decompression of the compressed floating point number follows a reverse process. These techniques are useful with applications in which the numbers to be compressed fall within a given range.
    Type: Grant
    Filed: October 31, 1998
    Date of Patent: May 29, 2001
    Assignee: Hewlett-Packard Company
    Inventors: Don W. Dyer, Samuel C. Sands
  • Patent number: 6175369
    Abstract: A high performance method for the compression of floating point format surface normals and the inverse method for the decompression of those compressed surface normals. Each of the three vector components of the surface normal is compressed by subtracting a constant from the floating point format value, then extracting a predefined field, and finally storing the extracted field. Decompression of the compressed surface normal requires first converting the three stored vector components into floating-point format and then adding a predefined constant to each. Typically the surface normals are of unit length.
    Type: Grant
    Filed: October 31, 1998
    Date of Patent: January 16, 2001
    Assignee: Hewlett-Packard Company
    Inventors: Don W. Dyer, Samuel C. Sands
  • Patent number: 6169819
    Abstract: A high performance method for the compression of floating point format surface normals and the inverse method for the decompression of those compressed surface normals. Each of the three vector components of the surface normal is compressed by subtracting a constant from the floating point format value, then extracting a predefined field, and finally storing the extracted field. Decompression of the compressed surface normal requires first converting the three stored vector components into floating-point format and then adding a predefined constant to each. Typically the surface normals are of unit length.
    Type: Grant
    Filed: October 31, 1998
    Date of Patent: January 2, 2001
    Assignee: Hewlett-Packard Company
    Inventors: Don W. Dyer, Samuel C. Sands
  • Patent number: 5764883
    Abstract: A system and method for identifying dynamic resource misuses via inspection that may result in problems like corrupted heap memory and memory leaks in a target program. The parameters and variable are marked with a particular state type. The target program is then analyzed one function at a time via symbolic execution so as to interpret each function based on the states of the variable and parameters and the operations performed by the basic blocks comprising the function. A state transition table is utilized to define the new state of a destination based on the operation and current state. Coding violations identified by the state transition table are reported and a signature of the function created for use when analyzing other functions that call the current function being analyzed.
    Type: Grant
    Filed: March 28, 1996
    Date of Patent: June 9, 1998
    Assignee: Hewlett-Packard Co.
    Inventors: Wade J. Satterfield, Samuel C. Sands
  • Patent number: 5291601
    Abstract: A method and apparatus for running a computer program containing references to a library utilizes a load time linker to insert addresses of referenced library items directly into the program code at run-time. The linking loader causes a delay that is not objectionable to the user. The method includes the steps of maintaining in computer memory a shared library including library items and a library symbol table. A relocatable file representing the computer program is loaded into the computer memory when the computer program is to be run. Addresses of library items that are referenced in the program code are found in the library symbol table, and the addresses of the library items are inserted directly into the program code of the relocatable file in computer memory. After the relocatable file is loaded from disk to memory, all operations are performed in computer memory, resulting in high speed operation.
    Type: Grant
    Filed: March 27, 1992
    Date of Patent: March 1, 1994
    Assignee: Hewlett-Packard Company
    Inventor: Samuel C. Sands
  • Patent number: 5212792
    Abstract: A method and apparatus for communication between programs, or tools, in a computer system includes the steps of establishing a bi-directional communication path between each tool and a central message server, registering with the message server the patterns of messages which each tool wishes to receive, and storing the message patterns. A message is forwarded to the message server when one tool requires the service of another tool. The message server compares the pattern of the received message with the previously-stored message patterns, and, if the message matches a stored message pattern, the message is forwarded to each tool for which a match occurs. If a message requests the service of another tool and the message does not match the patterns of the previously-stored messages, an execution manager determines from a status table and an execution initialization table which tool can service the request message.
    Type: Grant
    Filed: June 1, 1989
    Date of Patent: May 18, 1993
    Assignee: Hewlett-Packard Company
    Inventors: M. Colin Gerety, Samuel C. Sands, Martin R. Cagan