protected internal bool CheckHitTest(Rectangle bounds, Point point, GridHitTest hitTest)
 {
     if (GridDrawing.PtInRect(bounds, point))
     {
         return(true);
     }
     return(false);
 }
Пример #2
0
        /// <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;
            }
        }
Пример #3
0
        /// <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;
        }
Пример #4
0
 /// <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;
 }