Beispiel #1
0
        private static bool CreateRectangle(DataRow iRow, Sheet iSheet, DrawingSketch iSketch, TransientGeometry tg)
        {
            bool isRectangleCreated = false;

            try
            {
                string   tempCoord = iRow.ItemArray[4].ToString();
                string[] coord     = tempCoord.Split(',');
                Double   initX     = Double.Parse(coord[0]);
                Double   initY     = Double.Parse(coord[1]);
                Double   height    = Double.Parse(iRow.ItemArray[1].ToString());
                Double   width     = Double.Parse(iRow.ItemArray[2].ToString());
                iSketch.Edit();
                Point2d    pt1 = tg.CreatePoint2d(initX, initY);
                Point2d    pt2 = tg.CreatePoint2d(initX + width, initY);
                Point2d    pt3 = tg.CreatePoint2d(initX + width, initY + height);
                Point2d    pt4 = tg.CreatePoint2d(initX, initY + height);
                SketchLine l1  = iSketch.SketchLines.AddByTwoPoints(pt1, pt2);
                SketchLine l2  = iSketch.SketchLines.AddByTwoPoints(pt2, pt3);
                iSketch.SketchLines.AddByTwoPoints(pt3, pt4);
                iSketch.SketchLines.AddByTwoPoints(pt4, pt1);
                iSketch.ExitEdit();
                GeometryIntent         oGeo1  = iSheet.CreateGeometryIntent(l1, null);
                GeometryIntent         oGeo2  = iSheet.CreateGeometryIntent(l2, null);
                LinearGeneralDimension iDim   = iSheet.DrawingDimensions.GeneralDimensions.AddLinear(pt1, oGeo1);
                DimensionStyle         iStyle = iDim.Style;
                iStyle.PartOffset        = 45.0;
                iStyle.ShowDimensionLine = true;
                iSheet.DrawingDimensions.GeneralDimensions.AddLinear(pt2, oGeo2).Style = iStyle;
                isRectangleCreated = true;
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
            return(isRectangleCreated);
        }
Beispiel #2
0
        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                this.Hide();

                foreach (DrawingDimension drwdim in sheet.DrawingDimensions)
                {
                    foreach (Inventor.TextStyle txtStl in drwDoc.StylesManager.TextStyles)
                    {
                        if (txtStl.InUse == true)
                        {
                            if (txtStl.Font != textBox1.Text)
                            {
                                txtStl.Font = textBox1.Text;
                            }
                            if (txtStl.FontSize != (Convert.ToDouble(textBox2.Text) / 10))
                            {
                                txtStl.FontSize = (Convert.ToDouble(textBox2.Text) / 10);
                            }
                            if (txtStl.Italic == true)
                            {
                                txtStl.Italic = false;
                            }
                            if (txtStl.Bold == true)
                            {
                                txtStl.Bold = false;
                            }
                        }
                    }
                    if (drwdim.Type == ObjectTypeEnum.kLinearGeneralDimensionObject)
                    {
                        dim = (LinearGeneralDimension)drwdim;
                        stl = dim.Style;
                        if (stl.TextStyle.Font != textBox1.Text)
                        {
                            stl.TextStyle.Font = textBox1.Text;
                        }
                        if (stl.TextStyle.FontSize != (Convert.ToDouble(textBox2.Text) / 10))
                        {
                            stl.TextStyle.FontSize = (Convert.ToDouble(textBox2.Text) / 10);
                        }
                        if (stl.TextStyle.Italic == true)
                        {
                            stl.TextStyle.Italic = false;
                        }
                        if (stl.TextStyle.Bold == true)
                        {
                            stl.TextStyle.Bold = false;
                        }
                        stl.LinearPrecision  = LinearPrecisionEnum.kZeroDecimalPlaceLinearPrecision;
                        stl.AngularPrecision = AngularPrecisionEnum.kZeroDecimalPlaceAngularPrecision;
                        int modelVal = (int)Math.Round(drwdim.ModelValue * 10);
                        str    = drwdim.Text.Text; int n;
                        format = "";
                        format = @" Font='" + textBox1.Text + "' ";
                        //format += @" FontSize = '" + textBox2.Text + "' ";
                        //"<DimensionValue/><StyleOverride Italic='True'>A</StyleOverride><StyleOverride Italic='True'><Stack FractionalTextScale='0,700000'>^2</Stack></StyleOverride>"
                        if (!int.TryParse(str, out n) && drwdim.HideValue == true)
                        {
                            format += @" Italic='True' ";
                            format += @" Bold='True' ";
                            if (str.Count() > 1)
                            {
                                drwdim.Text.FormattedText = @"<StyleOverride" + format + @">" + str[0] + @"</StyleOverride>" +
                                                            @"<StyleOverride" + format + @">" + "<Stack FractionalTextScale='0,700000'>^" + str[1] + @"</Stack></StyleOverride>";
                            }
                            else
                            {
                                drwdim.Text.FormattedText = @"<StyleOverride" + format + @">" + str + @"</StyleOverride>";
                            }
                        }
                        if (modelVal >= 3000)
                        {
                            int res = roundDim(modelVal, Convert.ToInt16(textBox4.Text));
                            if (modelVal != res)
                            {
                                drwdim.OverrideModelValue = (double)res / 10;
                            }
                        }
                    }
                }
                foreach (DrawingView view in sheet.DrawingViews)
                {
                    format = ""; bool flag = true;
                    if (flag)
                    {
                        stlTxt = view.Label.TextStyle;

                        if (stlTxt.Font != textBox1.Text)
                        {
                            stlTxt.Font = textBox1.Text;
                        }
                        if (stlTxt.FontSize != (Convert.ToDouble(textBox2.Text) / 10))
                        {
                            stlTxt.FontSize = (Convert.ToDouble(textBox2.Text) / 10);
                        }
                        if (stlTxt.Italic == true)
                        {
                            stlTxt.Italic = false;
                        }
                        if (stlTxt.Bold == true)
                        {
                            stlTxt.Bold = false;
                        }
                        flag = false;
                    }
                    str = view.Label.FormattedText;
                    int indx = str.IndexOf("Font='");
                    while (indx != -1)
                    {
                        str  = findOverride(str, "Font='", textBox1.Text, textBox1.Text, indx);
                        indx = str.IndexOf("Italic='", indx + 1);
                        str  = findOverride(str, "Italic='", "False", "False", indx);
                        indx = str.IndexOf("Font='", indx + 1);
                    }

                    indx = str.IndexOf("<Br/>");
                    if (indx != -1)
                    {
                        string oldstr = str.Substring(0, indx);
                        str  = str.Substring(indx, str.Length - indx);
                        indx = str.IndexOf("FontSize='");
                        if (indx != -1)
                        {
                            str = oldstr + findOverride(str, "FontSize='", (Convert.ToDouble(textBox3.Text) / 10).ToString(), "", indx);
                        }
                        view.Label.FormattedText = str;
                    }
                }

                this.Close();
            }
            catch (Exception)
            {
                this.Close();
            }
        }
Beispiel #3
0
 public InventorLinearGeneralDim(LinearGeneralDimension dimension)
 {
     _dimension = dimension;
     Sheet      = new InventorSheet(_dimension.Parent);
 }