예제 #1
0
        /// <summary>
        /// Create a default timber shell with panels using a continuous analytical model.
        /// </summary>
        /// <param name="region">Panel region.</param>
        /// <param name="timberPlateMaterial">Timber material. See <see cref="FemDesign.Materials.TimberPanelType"/>.</param>
        /// <param name="direction">Timber panel span direction.</param>
        /// <param name="externalEdgeConnection"></param>
        /// <param name="identifier">Name of shell.</param>
        /// <param name="eccentricity"></param>
        /// <param name="panelWidth"></param>
        /// <returns></returns>
        public static Panel DefaultTimberContinuous(Geometry.Region region, Materials.TimberPanelType timberPlateMaterial, Geometry.FdVector3d direction, EdgeConnection externalEdgeConnection = null, string identifier = "TP", ShellEccentricity eccentricity = null, double panelWidth = 1.5)
        {
            if (externalEdgeConnection == null)
            {
                externalEdgeConnection = EdgeConnection.GetDefault();
            }

            if (eccentricity == null)
            {
                eccentricity = ShellEccentricity.GetDefault();
            }

            Geometry.FdPoint3d anchorPoint    = region.Contours[0].Edges[0].Points[0];
            InternalPanel      internalPanel  = new InternalPanel(region);
            InternalPanels     internalPanels = new InternalPanels(internalPanel);
            PanelType          type           = PanelType.Timber;
            string             panelName      = "A";
            double             gap            = 0.01;
            double             orthotropy     = 1;
            bool externalMovingLocal          = externalEdgeConnection.MovingLocal;

            var panel = new Panel(region, anchorPoint, internalPanels, timberPlateMaterial, externalEdgeConnection, type, identifier, panelName, gap, orthotropy, eccentricity, externalMovingLocal, panelWidth);

            panel.LocalX = direction; // Set timber panel span direction

            return(panel);
        }
예제 #2
0
        /// <summary>
        /// Create a default concrete shell with panels using a continuous analytical model.
        /// </summary>
        /// <param name="region">Panel region.</param>
        /// <param name="externalEdgeConnection"></param>
        /// <param name="material"></param>
        /// <param name="section"></param>
        /// <param name="identifier">Name of shell.</param>
        /// <param name="orthotropy"></param>
        /// <param name="ecc"></param>
        /// <returns></returns>
        public static Panel DefaultContreteContinuous(Geometry.Region region, EdgeConnection externalEdgeConnection, Materials.Material material, Sections.Section section, string identifier, double orthotropy, ShellEccentricity ecc)
        {
            Geometry.FdPoint3d anchorPoint    = region.Contours[0].Edges[0].Points[0];
            InternalPanel      internalPanel  = new InternalPanel(region);
            InternalPanels     internalPanels = new InternalPanels(internalPanel);
            PanelType          type           = PanelType.Concrete;
            string             panelName      = "A";
            double             gap            = 0.003;
            bool externalMovingLocal          = externalEdgeConnection.MovingLocal;

            return(new Panel(region, anchorPoint, internalPanels, externalEdgeConnection, type, material, section, identifier, panelName, gap, orthotropy, ecc, externalMovingLocal));
        }
예제 #3
0
        protected override void CreateChildControls()
        {
            if (State == ControlState.Designtime || State == ControlState.Preview)
            {
                this.Controls.Add(new Literal()
                {
                    Text = "The Session Variable Reader"
                });
            }

            InternalControls.InternalPanel panel = new InternalPanel();
            panel.ControlID = this.ControlID + "_hiddenPanel";
            this.Controls.Add(panel);

            _extender                      = new SessionControlExtender();
            _extender.ControlID            = this.ControlID;
            _extender.TargetControlID      = panel.ControlID;
            _extender.SessionVariableName  = SessionVariableName;
            _extender.SessionVariableValue = SessionVariableValue;
            this.Controls.Add(_extender);
            base.CreateChildControls();
        }
        protected override void CreateChildControls()
        {
            if (State == ControlState.Designtime || State == ControlState.Preview)
            {
                this.Controls.Add(new Literal()
                {
                    Text = "The silverlight control"
                });
            }
            else
            {
                string        resourceUrl  = this.Page.ClientScript.GetWebResourceUrl(typeof(K2Field.Smartforms.Controls.SilverlightControl.SilverlightControl), "K2Field.Smartforms.Controls.SilverlightControl.SilverlightUpload.xap");
                Literal       l            = new Literal();
                StringBuilder controlThing = new StringBuilder();
                controlThing.AppendFormat("<object id=\"{0}\" data=\"data:application/x-silverlight-2,\" type=\"application/x-silverlight-2\" width=\"200px\" height=\"200px\">", this.ControlID + "_SilverlightControl");
                controlThing.AppendFormat("<param name=\"source\" value=\"{0}\"/>", resourceUrl);
                controlThing.Append("<param name=\"minRuntimeVersion\" value=\"4.0.50826.0\" />");
                controlThing.Append("<param name=\"autoUpgrade\" value=\"true\" />");
                controlThing.Append("<param name=\"enablehtmlaccess\" value=\"true\" />");
                controlThing.AppendFormat("<param name=\"initParams\" value=\"objectID={0}\" />", this.ControlID);
                controlThing.Append("<a href=\"http://go.microsoft.com/fwlink/?LinkID=149156&v=4.0.50826.0\" style=\"text-decoration:none\">");
                controlThing.Append("<img src=\"http://go.microsoft.com/fwlink/?LinkId=161376\" alt=\"Get Microsoft Silverlight\" style=\"border-style:none\"/>");
                controlThing.Append("</a>");
                controlThing.Append("</object></div>");
                l.Text = controlThing.ToString();
                this.Controls.Add(l);
            }

            InternalControls.InternalPanel panel = new InternalPanel();
            panel.ControlID = this.ControlID + "_filePanel";
            this.Controls.Add(panel);

            _extender                 = new SilverlightControlExtender();
            _extender.ControlID       = this.ControlID;
            _extender.TargetControlID = panel.ControlID;
            this.Controls.Add(_extender);
            base.CreateChildControls();
        }