Beispiel #1
0
        /// <summary>
        /// 从界面中获取面层的设置选项信息
        /// </summary>
        /// <returns></returns>
        public FaceOptions GetFaceOptions()
        {
            FaceOptions op = new FaceOptions(includeSameNormal: CheckBoxSameNormalFaces.IsChecked ?? false,
                                             excludeFace: CheckBoxExcludeFace.IsChecked ?? false,
                                             multiFaces: CheckBoxMultiFaces.IsEnabled && (CheckBoxMultiFaces.IsChecked ?? false),
                                             unionInnerSolids: CheckBoxUnionInnerSolids.IsChecked ?? false);

            // 颜色
            Autodesk.Revit.DB.Color c1;
            ColorConverter.ConvertColor(((SolidColorBrush)ColorBoard.Background).Color, out c1);
            op.Color = c1;

            // 厚度
            double thickNess;

            double.TryParse(TextBlockThickness.Text, out thickNess);
            op.SurfaceThickness = thickNess / 1000;

            // 类别
            ElementId categoryId = ComboxCategory.SelectedValue as ElementId;

            op.CategoryId = categoryId ?? new ElementId(BuiltInCategory.OST_Walls);

            // 面层类型
            op.FaceType = ComboxType.Text;

            return(op);
        }
Beispiel #2
0
        private void ColorBoard_MouseDown(object sender, MouseButtonEventArgs e)
        {
            ColorDialog loColorForm = new ColorDialog
            {
                FullOpen = true,
            };

            Color color;

            ColorConverter.ConvertColor(((SolidColorBrush)ColorBoard.Background).Color, out color);
            loColorForm.Color = color;

            if (loColorForm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                System.Windows.Media.Color clr = new System.Windows.Media.Color()
                {
                    R = loColorForm.Color.R,
                    G = loColorForm.Color.G,
                    B = loColorForm.Color.B,
                    A = loColorForm.Color.A
                };

                ColorBoard.Background = new SolidColorBrush(clr);
            }
        }