DisplayPipelineDraw2dText Method (String, Color, Point2d, Boolean) |
Namespace: Rhino.Display
public void Draw2dText( string text, Color color, Point2d screenCoordinate, bool middleJustified )
Public Sub Draw2dText ( text As String, color As Color, screenCoordinate As Point2d, middleJustified As Boolean )
using Rhino; using Rhino.DocObjects; using Rhino.Geometry; using Rhino.Commands; using Rhino.Input.Custom; namespace examples_cs { public class DrawStringCommand : Command { public override string EnglishName { get { return "csDrawString"; } } protected override Result RunCommand(RhinoDoc doc, RunMode mode) { var gp = new GetDrawStringPoint(); gp.SetCommandPrompt("Point"); gp.Get(); return gp.CommandResult(); } } public class GetDrawStringPoint : GetPoint { protected override void OnDynamicDraw(GetPointDrawEventArgs e) { base.OnDynamicDraw(e); var xform = e.Viewport.GetTransform(CoordinateSystem.World, CoordinateSystem.Screen); var current_point = e.CurrentPoint; current_point.Transform(xform); var screen_point = new Point2d(current_point.X, current_point.Y); var msg = string.Format("screen {0:F}, {1:F}", current_point.X, current_point.Y); e.Display.Draw2dText(msg, System.Drawing.Color.Blue, screen_point, false); } } }
Imports Rhino Imports Rhino.DocObjects Imports Rhino.Geometry Imports Rhino.Commands Imports Rhino.Input.Custom Namespace examples_vb Public Class DrawStringCommand Inherits Command Public Overrides ReadOnly Property EnglishName() As String Get Return "vbDrawString" End Get End Property Protected Overrides Function RunCommand(doc As RhinoDoc, mode As RunMode) As Result Dim gp = New GetDrawStringPoint() gp.SetCommandPrompt("Point") gp.[Get]() Return gp.CommandResult() End Function End Class Public Class GetDrawStringPoint Inherits GetPoint Protected Overrides Sub OnDynamicDraw(e As GetPointDrawEventArgs) MyBase.OnDynamicDraw(e) Dim xform = e.Viewport.GetTransform(CoordinateSystem.World, CoordinateSystem.Screen) Dim current_point = e.CurrentPoint current_point.Transform(xform) Dim screen_point = New Point2d(current_point.X, current_point.Y) Dim msg = String.Format("screen {0:F}, {1:F}", current_point.X, current_point.Y) e.Display.Draw2dText(msg, System.Drawing.Color.Blue, screen_point, False) End Sub End Class End Namespace
from Rhino import * from Rhino.DocObjects import * from Rhino.Geometry import * from Rhino.Commands import * from Rhino.Input.Custom import * from System.Drawing import Color def RunCommand(): gp = GetDrawStringPoint() gp.SetCommandPrompt("Point") gp.Get() return gp.CommandResult() class GetDrawStringPoint(GetPoint): def OnDynamicDraw(self, e): xform = e.Viewport.GetTransform( CoordinateSystem.World, CoordinateSystem.Screen) current_point = e.CurrentPoint current_point.Transform(xform) screen_point = Point2d(current_point.X, current_point.Y) msg = "screen {0}, {1}".format(screen_point.X, screen_point.Y) e.Display.Draw2dText(msg, Color.Blue, screen_point, False) if __name__ == "__main__": RunCommand()