protected internal bool CheckHitTest(Rectangle bounds, Point point, GridHitTest hitTest) { if (GridDrawing.PtInRect(bounds, point)) { return(true); } return(false); }
/// <summary> /// initialize the special UI controls which needed to be initialized manually /// </summary> private void InitializeCustomComponent() { // moniter the sample message change status m_myDocument.MessageChanged += new MyDocument.MessageChangedHandler(m_myDocument_MessageChanged); foreach (WallType type in m_myDocument.WallTypes) { wallTypeComboBox.Items.Add(type.Name); } // add items to the views combo box foreach (Autodesk.Revit.DB.View view in m_myDocument.Views) { string name = view.ViewType + " : " + view.Name; viewComboBox.Items.Add(name); } // add items to the lineOperationsComboBox lineOperationsComboBox.Items.Add(new LineOperation(LineOperationType.AddULine)); lineOperationsComboBox.Items.Add(new LineOperation(LineOperationType.AddVLine)); lineOperationsComboBox.Items.Add(new LineOperation(LineOperationType.LockOrUnlockLine)); lineOperationsComboBox.Items.Add(new LineOperation(LineOperationType.MoveLine)); lineOperationsComboBox.Items.Add(new LineOperation(LineOperationType.AddSegment)); lineOperationsComboBox.Items.Add(new LineOperation(LineOperationType.RemoveSegment)); lineOperationsComboBox.Items.Add(new LineOperation(LineOperationType.AddAllSegments)); lineOperationsComboBox.Items.Add(new LineOperation(LineOperationType.AddAllMullions)); lineOperationsComboBox.Items.Add(new LineOperation(LineOperationType.DeleteAllMullions)); // initialize the wall drawing's canvas information { m_myDocument.WallGeometry.Drawing.Boundary = curtainWallPictureBox.ClientRectangle; System.Drawing.Point rectLocation = curtainWallPictureBox.ClientRectangle.Location; int rectWidth = curtainWallPictureBox.ClientRectangle.Width; int rectHeight = curtainWallPictureBox.ClientRectangle.Height; int midX = rectLocation.X + rectWidth / 2; int midY = rectLocation.X + rectHeight / 2; System.Drawing.Point originPoint = new System.Drawing.Point(midX, midY); m_myDocument.WallGeometry.Drawing.Origin = originPoint; } // initialize the grid drawing's information { GridDrawing gridDrawing = m_myDocument.GridGeometry.Drawing; gridDrawing.MouseInGridEvent += new GridDrawing.MouseInGridHandler(Drawing_MouseInGridEvent); gridDrawing.MouseOutGridEvent += new GridDrawing.MouseOutGridHandler(Drawing_MouseOutGridEvent); gridDrawing.Boundary = curtainGridPictureBox.ClientRectangle; // get the midpoint of the canvas region System.Drawing.Point rectLocation = gridDrawing.Boundary.Location; int rectWidth = gridDrawing.Boundary.Width; int rectHeight = gridDrawing.Boundary.Height; int midX = rectLocation.X + rectWidth / 2; int midY = rectLocation.Y + rectHeight / 2; System.Drawing.Point curtainGridMidpoint = new System.Drawing.Point(midX, midY); gridDrawing.Center = curtainGridMidpoint; } }
/// <summary> /// constructor /// </summary> /// <param name="myDoc"> /// the document of this sample /// </param> /// <param name="drawing"> /// the GridDrawing data used in the dialog /// </param> public GridCoordinates(MyDocument myDoc, GridDrawing drawing) { m_myDocument = myDoc; if (null == drawing) { TaskDialog.Show("Revit", "Error! There's no grid information in the curtain wall."); } m_drawing = drawing; drawing.Coordinates = this; }
/// <summary> /// constructor /// </summary> /// <param name="myDoc"> /// the document of the sample /// </param> public GridGeometry(MyDocument myDoc) { m_myDocument = myDoc; m_commandData = myDoc.CommandData; m_activeDocument = myDoc.Document; m_gridProperties = new GridProperties(); //m_activeGrid = grid; m_drawing = new GridDrawing(myDoc, this); m_uGridLines = new List <CurtainGridLine>(); m_vGridLines = new List <CurtainGridLine>(); m_GridVertexesXYZ = new List <Autodesk.Revit.DB.XYZ>(); }
private void Awake() { _gridDrawing = (GridDrawing)target; }