advertisement
javaboutique
Search Tips
Articles  |   Tutorials  |   Reviews  |   Tools  |   by Category  |   by Date  |   by Name  |   Submit  |   Source  |   Forums  |  
javaboutique
Browse DevX


Partners & Affiliates











advertisement

Reviews : Java Books : 3D User Interfaces with Java 3D :


Title: 3D User Interfaces with Java 3D
ISBN: 1884777902
US Price: $49.95
© Manning Publications Co.

8.2 FEEDBACK ELEMENTS

Of the basic feedback elements, described in section 5.2, those that are especially useful in manipulation are indicators, handles, verbal messages, and sound effects. Here the focus is on elements that are suited for relational feedback, in particular ones formulated to provide the user with a visual feel for how objects are situated during direct manipulation in a 3D scene.

One way to categorize relational feedback elements is by how they indicate object and environmental relationships. For example, one type projects— sticks out— into the surrounding space from the host object. Another type encloses the host object to indicate its spatial extent. And yet another type, the tic mark, is a small line or symbol that assists with alignment or that indicates when alignment is achieved. A different way to distinguish relational feedback elements is by whether they participate by showing relations actively or passively. Passive elements, such as outlines and projections, are decorations that require no active processing. Instead, they do their job strictly by their visual appearance and the manner in which they occlude or reveal surrounding objects. Active elements, on the other hand, require explicit geometric processing to determine when specific spatial relationships occur, such as when two edges align and a tic mark appears.

Because of their use for in-scene manipulation, many of these elements benefit from revealment techniques discussed as part of feedback and visibility. For example, snap elements on objects are used to snap and attach objects together— two critical functions in manipulation. It is convenient, if not vital, for the user to see and access the snap elements even if surrounding objects hide them. Use of the X-ray overlay technique is one way to satisfy this need. Many of the visual attributes for feedback elements discussed earlier in section 6.2, such as distinction, size, and orientation, are also applicable to snap elements and the other feedback elements described here.

Table 8. 2 Relational feedback elements for manipulation
Feelers
  • Visual aids showing the relation of an object to its neighbors and surroundings
  • Passive feelers are visual only
  • Active feelers require real-time geometric processing
Projections
  • A feeler that projects from an object into the scene
  • Line, plane, or complex shape indicating proximity, alignment, or affinity
Skirts
  • A projection appearing as a translucent box underneath or beside an object
  • Idiom for a lifted object
  • Intersects with surrounding objects to show proximity
Outlines
  • Encloses or delineates an object, object part (vertex, edge, face), or object group
  • As a feeler, shows spatial extent
  • As control feedback, indicates selection and mouseover
  • As a control widget, serves as a drag handle
Tic marks
  • A small line or symbol marking a spatial position, graduating a spatial range, or indicating alignment
  • As a feeler, indicates proximity or alignment
  • As control feedback, indicates graduations over a range of motion
Rulers
  • Provides quantitative measurement of size, distance, angle, and so on
  • As a feeler, indicates distance between or position of objects in the scene
  • As descriptive feedback, indicates size, angle, curvature, and so on of an object
  • As a tool, an active or passive measuring tool manipulated by the user
Snaps
  • Hybrid of relational and control feedback indicating where and how attachment can occur
  • Can have a type to enforce selective matching
  • Can have an orientation to enforce geometric alignment

8.2.1 Feelers

When the user views a 3D world on a 2D display, there can be confusion as to how far away objects are from the user or from other objects. This was described earlier by the example of looking at a simple box in the scene and not being able to tell whether the box is small, above the floor, and near; or whether it is large, on the floor, and far. It is generally useful and sometimes even necessary to provide visual aids showing where an object is in the world in relation to its neighbors and surroundings. Elements used to provide this type of relational feedback are called feelers.

Relational feedback elements can serve in many feedback and control capacities, feelers being a major one. The term feeler refers to both a class of elements as well as a role in which other elements can serve. Most of the elements described below are either a specific type of feeler element, or can serve in the capacity of a feeler.

8.2.2 Projections

Projecting feelers, or projections, can take the form of lines, planes, boxes, outlines, and even lightning bolts. Some show proximity and alignment, and others show affinity. For example, a plane might project from an edge of the host object parallel to a face of the object. As the user moves the object, so too moves the plane projecting into space. By moving the target object, the user can get a sense for where the object is in relation to neighboring objects by the way the plane intersects them, and whether or not the target face is aligned with some other object. A special form of planar projection feeler is the skirt, which is described and shown in section 8.2.3.

 Figure 8. 7 When opposing snap points are close enough to snap, they highlight and a feeler indicates what will be snapped. (Courtesy of TechniCon Corporation)
An example of a projecting feeler with affinity might be a lightning bolt that appears between snap points on nearby objects. A snap point indicates where, on an object, other objects can be connected. The lightening bolt's appearance is an idiom telling the user that the points will be snapped together if the user lets go of the mouse button. An example is shown in figure 8. 7.

As with any feedback technique, it is important for projecting feelers to minimize their interference with the user's view of the surroundings; otherwise, the solution might be worse than the problem. In general, feelers should be visible only when the host object is selected or being manipulated; and they should be as small as possible while still getting the job done. If a line will do, then use it instead of a plane because the line will be less intrusive. The position of the feeler on the target can also help. For example, lines projecting at floor level from the target object would help indicate proximity to and alignment with other objects on the floor with minimal interference to viewing the contents of the room. If the feeler must be a plane, then consider making the plane semitransparent so surrounding objects can be seen through it. This also helps the user with depth perception because near objects will appear clearly, and far objects will appear hazy through the feeler plane. Limiting the extent of the feeler, rather than letting it stretch to infinity, can also help to minimize presentation clutter. For example, the extent can be limited to the nearest intersecting object or to a particular surrounding entity, such as the floor or walls in a room. This, however, makes the projection an active feeler, e. g., as an alignment tic mark, instead of a passive one.

How to Add Java Applets to Your Site

New on the Java Boutique:

New Review:

Time Management Made Easy with the Quartz Enterprise Job Scheduler
Why not just use the Java timer API? This open source scheduling API boasts simplicity, ease-of-integration, a well-rounded feature set, and it's free!

New Applet:

Reverse Complement
Reverse Complement is a simple applet that converts DNA or RNA sequences into three useful formats.

Elsewhere on internet.com:

WebDeveloper Java
Lots of Java information on webdeveloper.com

WDVL Java
Thorough Java resource at the Web Developer's Virtual Library.

ScriptSearch Java
Hundreds of free Java code files to download.

jGuru: Your View of the Java Universe
Customizable portal with online training, FAQs, regular news updates, and tutorials.

 Avaya Developer Showcase
 MSDN Spotlight
 PHP for Windows Showcase
XML error: undefined entity at line 34
advertisement
Receive Articles via our XML/RSS feed
Receive Articles via our XML/RSS feed

JavaBytes
Internet Cyclone
This powerful, easy-to-use, internet optimizer is for Windows 95, 98, ME, NT, 2000 and XP. It's designed to automatically optimize your Windows settings, boosting your Internet connection up to 200%.

IBM Brings Developers Into the Cloud
Apache at 10: You Can't Buy Us
Microsoft's CodePlex Foundation Moving Forward
Apple Claims 100,000 Apps, Google Analyzes Them
Nokia Latest to Play Opera Mobile 10 Browser
PayPal Opens Up Payment Platform to Devs
Ubuntu Linux 9.10 'Karmic Koala' Starts Its Climb
IBM Links Rational Developer Tools, Tivoli Apps
Libraries Give Vista Apps a Windows 7 Look
Ubuntu: The 'Default Alternative' to Windows?

Delivering Web-based Embedded Fonts in CSS 3
Adobe Helps PHP Developers Create Rich Internet Applications
Java Developers Finding a Home at Adobe Flex
Virtualization Delivers a Dynamic Infrastructure
Consuming XML Web Services in iPhone Applications
Build a More Agile Business with IBM
POJO-Based Solutions for LDAP Access: One Good, One Better
IBM Offers Enhanced Measurement and Management for Energy Usage
IBM Helps Transformation to an Information-Based Enterprise
Top Five Touch UI-Related Design Guidelines

Advertising Info  |   Member Services  |   Contact Us  |   Help  |   Feedback  |   Site Map  |   Network Map  |   About

internet.commediabistro.comJusttechjobs.comGraphics.com

Search:

WebMediaBrands Corporate Info

Legal Notices, Licensing, Reprints, Permissions, Privacy Policy.
Advertise | Newsletters | Shopping | E-mail Offers | Freelance Jobs