ClientGraphics allow you to provide visual cues to the user and there are many examples in the API help that show how to create ClientGraphics. This VB.NET example is interesting because it shows you how to put text on each planar face in a part.
To create ClientGraphics text, you use TextGraphics and you can control the orientation of the TextGraphics in 3D space. The TextGraphics itself is placed on the x-y plane and along the x-axis but you can reposition it by transforming the graphics node that the TextGraphics is owned by.
Below is code from this example that creates the ClientGraphics. In the VB.NET project you will also find the functions named FaceNormal and FaceXDir that are called from this Sub. See the comments in the code for more detail on how this example does the work. Notice that the second time you run the code it removes the ClientGraphics.
Public Sub CreateTextOnEveryPlanarFace()
Dim partDoc As PartDocument
partDoc = _InvApplication.ActiveDocument
Dim compDef As PartComponentDefinition
compDef = partDoc.ComponentDefinition
' Check to see if client graphics already exist.
Dim clientGraphics As ClientGraphics
clientGraphics = compDef. _
' They do exist so just delete them and exit.
Catch ex As Exception
' They don't exist so create them
clientGraphics = compDef. _
' Iterate over all of the faces in the part.
Dim count As Integer
Dim oFace As Face
For Each oFace In _
' Check if the current face is a plane.
If oFace.SurfaceType = _
' Get a point on the face. This
' function is good because you're
' guaranteed to get a(Point) on the
' face, where-as if you got the
' center of the face there could be
' a hole there so the point would
' be in space.
Dim facePoint As Point
facePoint = oFace.PointOnFace
' Get the normal of the face.
Dim normal As UnitVector
normal = FaceNormal(oFace, facePoint)
' Get the X direction of the face
' (normal along the u).
Dim xDir As UnitVector
xDir = FaceXDir(oFace, facePoint)
' Calculate the Y direction by crossing
' the normal with the x.
Dim yDir As UnitVector
yDir = normal.CrossProduct(xDir)
' Create a transform to position the text
' on the face.
Dim transform As Matrix
transform = _InvApplication. _
Call transform. _
xDir.AsVector, yDir.AsVector, _
' Create a graphics node.
Dim oNode As GraphicsNode
count = count + 1
oNode = clientGraphics.AddNode(count)
' Create text at the model origin.
Dim text As TextGraphics
text = oNode.AddScalableTextGraphics
Dim origin As Point
origin = _InvApplication. _
TransientGeometry.CreatePoint(0, 0, 0)
Call text.SetTransformBehavior(origin, _
text.Text = "Face " & count
text.DepthPriority = 1
text.FontSize = 0.1
text.Font = "Arial"
text.HorizontalAlignment = _
text.VerticalAlignment = _
text.Anchor = origin
Call text.PutTextColor(255, 255, 0)
' Transform the graphics node so the text
' will lie on the face.
oNode.Transformation = transform
' Update the view to see the results.