Skip to content
/ Tether Public

TETHER enables the annotation of behavioural data encoded in Rhinoceros with video information.

Notifications You must be signed in to change notification settings

pmavros/Tether

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tether

Description

TETHER enables the connection of a video playback in Processing and a CAD drawing in Rhinoceros. Behind the scenes, the Processing script relies on the OSC protocol to broadcast the playback position (i.e. the timestamp of the current frame, expressed as milliseconds from start, and as a percentage of the total movie duration). On the Rhinoceros side, a Grasshopper script, receive the timestamp information and allows the user to control the movie playback. When the user adds a new point on the current drawing on Rhino, the timestamp gets appended to the point as the object name as well as a separate attribute.

Requirements

TETHER consists of two parts:

#1 Processing http://processing.org

A lightweigh script plays a movie, broadcasts the timestampt to the localhost using OSC and receives playback commands from the keyboard and also using OSC.

The following external libraries are used. You can directly install both libraries from Processing (Tools > Add Tool > ...)

  1. Andreas Schlegel 's OscP5 and NetP5 libraries - http://www.sojamo.de/libraries/oscP5/. This allows us to send / receive messages with other applications using the OSC protocol
  2. Oleg Sidorov 's VLCJVideo library - https://github.com/icanhazbroccoli/VLCJVideo

#2 Rhinoceros 3D modeling software https://www.rhino3d.com/

A Grasshopper (GH) Script does four things:

  1. It creates a simple UI to control the type of input and movie playback.
  2. It listens to the localhost for incoming OSC messages, and receives the timestamp of the current frame using (sent by Processing).
  3. It sends OSC messages with playback commands ( go +/- 5 seconds, use a slider to move in the movie).
  4. It listens to the Rhino runtime environment for the addition of new point objects. When a new point is detected, the information from the timestamp, as well as other information determined by the user are appended.

The GH script relies on the following external plugins:

  1. gHowln - https://www.food4rhino.com/en/app/ghowl
  2. Human UI - https://www.food4rhino.com/en/app/human-ui
  3. Heteroptera - https://www.food4rhino.com/en/app/heteroptera
  4. Pufferfish - https://www.food4rhino.com/en/app/pufferfish
  5. geospatial for saving a csv (can be changed)

Acknowledgements

Thanks goes to the authors of the various libraries used for providing examples that I used to implement the final system, and to my colleagues at the Future Cities Laboratory for encouraging me to wrap this up!

About

TETHER enables the annotation of behavioural data encoded in Rhinoceros with video information.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published