Inheritance: MonoBehaviour
Ejemplo n.º 1
0
        public static Common GenerateLambert(ColorOrTexture diffuse,
                                             ColorOrTexture emission,
                                             ColorOrTexture ambient,
                                             ColorOrTexture reflective,
                                             FloatOrParam reflectivity,
                                             Transparent transparent,
                                             FloatOrParam transparency,
                                             FloatOrParam index_of_refraction)
        {
            Technique fxTechnique = new Technique();

            // add the surface sampler element to the technique to provide blender support
            if (Collada.CompatibilityToBlender && diffuse != null)
            {
                Texture texture = diffuse;
                fxTechnique.Add(Common.GenerateSurfaceSampler(ref texture, "diffuse_"));
            }

            Common.Technique.Lambert fxShader = new Common.Technique.Lambert(diffuse, emission, ambient, reflective, reflectivity, transparent, transparency, index_of_refraction);
            fxTechnique.item = fxShader;

            Common fxProfile = new Common(fxTechnique);

            //fxProfile.technique = fxTechnique;

            return(fxProfile);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 渲染显示
        /// </summary>
        /// <param name="page"></param>
        /// <param name="x"></param>
        /// <param name="y"></param>
        /// <param name="width"></param>
        /// <param name="height"></param>
        public void RenderShow(Transparent page, double x, double y, int width, int height)
        {
            _onControlRender.ThreadExecuteUI(() =>
            {
                try
                {
                    page.Cursor = Cursors.Cross;
                    page.mainBroder.BorderBrush     = System.Windows.Media.Brushes.Red;
                    page.mainBroder.BorderThickness = new Thickness(2);
                    page.mainBroder.Width           = width;
                    page.mainBroder.Height          = height;

                    page.mainPanel.Width  = 0;
                    page.mainPanel.Height = 0;

                    page.labContent.Content = "无法识别到金额";

                    page.Left   = x;
                    page.Top    = y - 25;
                    page.Width  = width;
                    page.Height = height + 25;
                    page.imgSuccess.Visibility = Visibility.Hidden;
                    if (page.Visibility == Visibility.Hidden || page.Visibility == Visibility.Collapsed)
                    {
                        page.Show();
                    }
                }
                catch (Exception ex)
                {
                    TextHelper.Error("RenderShow 异常", ex);
                }
            });
        }
Ejemplo n.º 3
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="other"></param>
 /// <returns></returns>
 public virtual bool Equals(Material other)
 {
     if (other == null)
     {
         return(false);
     }
     return(AlphaTest.Equals(other.AlphaTest) &&
            Blending.Equals(other.Blending) &&
            ClipIntersections.Equals(other.ClipIntersections) &&
            ClipShadows.Equals(other.ClipShadows) &&
            ColorWrite.Equals(other.ColorWrite) &&
            DepthTest.Equals(other.DepthTest) &&
            DepthWrite.Equals(other.DepthWrite) &&
            Dithering.Equals(other.Dithering) &&
            FlatShading.Equals(other.FlatShading) &&
            Fog.Equals(other.Fog) &&
            Lights.Equals(other.Lights) &&
            Opacity.Equals(other.Opacity) &&
            Overdraw.Equals(other.Overdraw) &&
            PremultipliedAlpha.Equals(other.PremultipliedAlpha) &&
            Side.Equals(other.Side) &&
            Transparent.Equals(other.Transparent) &&
            VertexColors.Equals(other.VertexColors) &&
            Visible.Equals(other.Visible) &&
            UserData == other.UserData &&
            ClippingPlanes == other.ClippingPlanes &&
            string.Equals(Precision, other.Precision));
 }
Ejemplo n.º 4
0
 public Constant(ColorOrTexture emission          = null,
                 ColorOrTexture reflective        = null,
                 FloatOrParam reflectivity        = null,
                 Transparent transparent          = null,
                 FloatOrParam transparency        = null,
                 FloatOrParam index_of_refraction = null) : base(emission, reflective, reflectivity, transparent, transparency, index_of_refraction)
 {
 }
Ejemplo n.º 5
0
 private void CreateDestroyTrans()
 {
     if (destroyTrans != null)
     {
         return;
     }
     gameObject.AddComponent <Transparent>();
     destroyTrans = GetComponent <Transparent>();
     destroyTrans.TransparentSeconds = DestroyOilFlyTime;
 }
Ejemplo n.º 6
0
 public void RenderSuccess(Transparent transparent, string money)
 {
     _onControlRender.ThreadExecuteUI(() =>
     {
         transparent.mainPanel.Width       = transparent.mainBroder.Width;
         transparent.mainPanel.Height      = transparent.mainBroder.Height;
         transparent.labContent.Content    = $"金额{money} 元";
         transparent.imgSuccess.Visibility = Visibility.Visible;
     });
 }
Ejemplo n.º 7
0
 public Lambert(ColorOrTexture diffuse,
                ColorOrTexture emission          = null,
                ColorOrTexture ambient           = null,
                ColorOrTexture reflective        = null,
                FloatOrParam reflectivity        = null,
                Transparent transparent          = null,
                FloatOrParam transparency        = null,
                FloatOrParam index_of_refraction = null) : base(diffuse, emission, ambient, reflective, reflectivity, transparent, transparency, index_of_refraction)
 {
 }
Ejemplo n.º 8
0
    // Start is called before the first frame update
    void Start()
    {
        var anim = GetComponent <Animator>();

        anim.SetBool("steamFlag", true);

        transparent = GetComponent <Transparent>();

        var obj = GameObject.Find("SteamManager");

        fac = obj.GetComponent <SpawnFactory>();
    }
Ejemplo n.º 9
0
 public Diffuse(ColorOrTexture diffuse,
                ColorOrTexture emission          = null,
                ColorOrTexture ambient           = null,
                ColorOrTexture reflective        = null,
                FloatOrParam reflectivity        = null,
                Transparent transparent          = null,
                FloatOrParam transparency        = null,
                FloatOrParam index_of_refraction = null) : base(emission, reflective, reflectivity, transparent, transparency, index_of_refraction)
 {
     this.ambient = ambient;
     this.diffuse = diffuse;
 }
Ejemplo n.º 10
0
 public Blinn(ColorOrTexture diffuse,
              ColorOrTexture emission          = null,
              ColorOrTexture ambient           = null,
              ColorOrTexture specular          = null,
              FloatOrParam shininess           = null,
              ColorOrTexture reflective        = null,
              FloatOrParam reflectivity        = null,
              Transparent transparent          = null,
              FloatOrParam transparency        = null,
              FloatOrParam index_of_refraction = null) : base(diffuse, emission, ambient, specular, shininess, reflective, reflectivity, transparent, transparency, index_of_refraction)
 {
 }
Ejemplo n.º 11
0
        public override int GetHashCode()
        {
            int hash = 1;

            if (Name.Length != 0)
            {
                hash ^= Name.GetHashCode();
            }
            if (address_ != null)
            {
                hash ^= Address.GetHashCode();
            }
            hash ^= filterChains_.GetHashCode();
            if (useOriginalDst_ != null)
            {
                hash ^= UseOriginalDst.GetHashCode();
            }
            if (perConnectionBufferLimitBytes_ != null)
            {
                hash ^= PerConnectionBufferLimitBytes.GetHashCode();
            }
            if (metadata_ != null)
            {
                hash ^= Metadata.GetHashCode();
            }
            if (deprecatedV1_ != null)
            {
                hash ^= DeprecatedV1.GetHashCode();
            }
            if (DrainType != 0)
            {
                hash ^= DrainType.GetHashCode();
            }
            hash ^= listenerFilters_.GetHashCode();
            if (transparent_ != null)
            {
                hash ^= Transparent.GetHashCode();
            }
            if (freebind_ != null)
            {
                hash ^= Freebind.GetHashCode();
            }
            if (tcpFastOpenQueueLength_ != null)
            {
                hash ^= TcpFastOpenQueueLength.GetHashCode();
            }
            if (_unknownFields != null)
            {
                hash ^= _unknownFields.GetHashCode();
            }
            return(hash);
        }
Ejemplo n.º 12
0
 // Token: 0x060005CC RID: 1484 RVA: 0x0000D11C File Offset: 0x0000B31C
 public Transparent getTransparent()
 {
     if (transparent == null)
     {
         Transparent.Builder builder = Transparent.CreateBuilder().SetId("").SetTemplateId(getTemplateId()).SetMessageId("").SetTaskId("").SetAction("pushmessage").AddRangeActionChain(getActionChain()).SetPushInfo(pushInfo).SetAppId(AppId).SetAppKey(AppKey).AddCondition(getDurCondition());
         if (smsInfo != null)
         {
             builder.SetSmsInfo(smsInfo);
         }
         transparent = builder.Build();
     }
     return(transparent);
 }
Ejemplo n.º 13
0
 public Transparent getTransparent()
 {
     if (this.transparent == null)
     {
         Transparent.Builder builder = Transparent.CreateBuilder().SetId("").SetTemplateId(this.getTemplateId()).SetMessageId("").SetTaskId("").SetAction("pushmessage").AddRangeActionChain((IEnumerable <ActionChain>) this.getActionChain()).SetPushInfo(this.pushInfo).SetAppId(this.appId).SetAppKey(this.appKey).AddCondition(this.getDurCondition());
         if (this.smsInfo != null)
         {
             builder.SetSmsInfo(this.smsInfo);
         }
         this.transparent = builder.Build();
     }
     return(this.transparent);
 }
Ejemplo n.º 14
0
 public Base(ColorOrTexture emission          = null,
             ColorOrTexture reflective        = null,
             FloatOrParam reflectivity        = null,
             Transparent transparent          = null,
             FloatOrParam transparency        = null,
             FloatOrParam index_of_refraction = null)
 {
     this.emission            = emission;
     this.reflective          = reflective;
     this.reflectivity        = reflectivity;
     this.transparent         = transparent;
     this.transparency        = transparency;
     this.index_of_refraction = index_of_refraction;
 }
Ejemplo n.º 15
0
        public Transparent getTransparent()
        {
            //
            Transparent transparent = Transparent.CreateBuilder()
                                      .SetId("")
                                      .SetMessageId("")
                                      .SetTaskId("")
                                      .SetAction("pushmessage")
                                      .AddRangeActionChain(getActionChain())
                                      .SetPushInfo(getPushInfo())
                                      .SetAppId(appId)
                                      .SetAppKey(appKey).Build();

            //
            return(transparent);
        }
Ejemplo n.º 16
0
        /*
         * public Task<bool> IsVersionCurrent()
         * {
         *  WebClient wc = new WebClient();
         *  Dictionary<string, string> d = new Dictionary<string, string>();
         *  string ver = wc.DownloadString("https://pastebin.com/raw/9T8ffyun");
         *  d = JsonConvert.DeserializeObject<Dictionary<string, string>>(ver);
         *  string thisVer = Assembly.GetExecutingAssembly().GetName().Version.ToString();
         *  return !string.IsNullOrEmpty(ver) && thisVer != ver ? Task.FromResult<bool>(false) : Task.FromResult<bool>(true);
         * }
         */


        private void MainFrm_Load(object sender, EventArgs e)
        {
#if DEBUG
            DebugForm debug = new DebugForm(editor);
            debug.Show();
            editor.Text = "请注意,个别杀毒软件将本软件列为病毒。本人郑重宣布,此软件非病毒。\r\n" +
                          "------------------------------------------\r\nAttention\r\n\r\nSome AntiVirus softwares mark" + CommonVals.programShortName + " as virus.\r\n" +
                          "I declare this software is not a virus.";
            MessageBox.Show("载入测试");
#endif
            if (Properties.Settings.Default.UseFluentDesign)
            {
                MessageBox.Show(CommonVals.programName + " 当前使用 Fluent Design 中的亚克力特效,在 Windows Forms 中使用\r\n没有可靠文献。请在文件 -> 设置中选择是否使用。");
                Transparent.SetBlur(this.Handle);
                this.TransparencyKey = Color.Black;
                LogManager.GetLogger(typeof(MainFrm)).Warn("正在使用亚克力特效");
            }

            if (!Properties.Settings.Default.UseFluentDesign)
            {
                // 无法访问是因为 isSnapshot 是常量,
                // 然而会被更改
                if (CommonVals.isSnapshot)
                {
                    Text = CommonVals.programName + " Snapshot - code version " + CommonVals.snapshot + " for " + CommonVals.verNumber;
                }
                else
                {
#pragma warning disable CS0162 // 检测到无法访问的代码
                    Text = CommonVals.programName + " " + CommonVals.verNumber;
#pragma warning restore CS0162 // 检测到无法访问的代码
                }
            }
            else
            {
                Text = "";
            }

            RefreshSettings(true);
        }
Ejemplo n.º 17
0
 void Start()
 {
     transparent = GetComponent <Transparent>();
 }
        public override void Build()
        {
            vp            = ViewPlane.Create(1024, 768, SystemOfCoordinates.SSC_INT);
            vp.NumSamples = 100;
            vp.MaxDepth   = 10;

            backgroundColor = new Vec3(0.0, 0.3, 0.25);
            tracer          = new Whitted(this);

            //AmbientOccluder a = new AmbientOccluder(ColorUtils.WHITE,
            //                                        0.25, 1.0);
            //a.Sampler = new MultiJittered(vp.NumSamples);
            Ambient a = new Ambient();

            a.ScaleRadiance = 0.25f;
            AmbientLight    = a;

            Pinhole pinhole = new Pinhole(new Vec3(1, 7.5, 20),
                                          new Vec3(0.0, -0.35, 0.0),
                                          new Vec3(0.0, 1.0, 0.0),
                                          5250);

            Camera = pinhole;

            Emissive e = new Emissive();

            e.ScaleRadiance = 3.0f;
            e.Ce            = ColorUtils.WHITE;

            RectangularLamp lamp = new RectangularLamp(
                new Rectangle(new Vec3(0, 20, 0),
                              new Vec3(1, 0, 0),
                              new Vec3(0, 0, 1),
                              new Vec3(0, -1, 0)),
                e);

            lamp.Sampler = new MultiJittered(vp.NumSamples);
            AddObject(lamp);

            AreaLight areaLight = new AreaLight();

            areaLight.Object  = lamp;
            areaLight.Shadows = true;
            AddLight(areaLight);

            //PointLight l = new PointLight();
            //l.SetLocation(20, 20, 15);
            //l.ScaleRadiance = 3.0f;
            //AddLight(l);

            Transparent glass = new Transparent();

            glass.SetKs(0.5f);
            glass.SetExp(2000);
            glass.SetIor(1.5f);
            glass.SetKr(0.1f);
            glass.SetKt(1.53f);
            //glass.SetCd(0.4f);

            float ir = 0.9f;
            float or = 1;

            //Bowl b = Bowl.CreateFlatRimmedBowl(ir, or);
            Bowl b = Bowl.CreateRoundRimmedBowl(ir, or);

            b.Material = glass;
            AddObject(b);

            Reflective reflective = new Reflective();

            reflective.SetKa(0.6f);
            reflective.SetKd(0.4f);
            reflective.SetCd(ColorUtils.RED);
            reflective.SetKs(0.5f);
            reflective.SetExp(2000);
            reflective.SetKr(0.25f);

            double r = 0.4;
            double t = 55;

            t = MathUtils.PI * t / 180;
            double x = -(0.9 - r) * Math.Cos(t);
            double y = -(0.9 - r) * Math.Sin(t);

            Sphere s = new Sphere(new Vec3(x, y, 0), r, reflective);

            AddObject(s);

            Reflective reflective2 = new Reflective();

            reflective2.SetKa(0.6f);
            reflective2.SetKd(0.4f);
            reflective2.SetCd(ColorUtils.YELLOW);
            reflective2.SetKs(0.5f);
            reflective2.SetExp(2000);
            reflective2.SetKr(0.5f);

            r = 0.35;
            t = 35;
            t = MathUtils.PI * t / 180;
            x = (0.9 - r) * Math.Cos(t);
            y = -(0.9 - r) * Math.Sin(t);

            Sphere s2 = new Sphere(new Vec3(x, y, 0), r, reflective2);

            AddObject(s2);

            Matte rm = new Matte();

            rm.SetColor(ColorUtils.WHITE);
            rm.SetKa(0.8f);
            rm.SetKd(0.85f);

            Rectangle rectangle = new Rectangle(new Vec3(-2, -1, -5),
                                                new Vec3(0, 0, 9),
                                                new Vec3(4, 0, 0));

            rectangle.Material = rm;
            AddObject(rectangle);
        }
Ejemplo n.º 19
0
        /// <summary>
        /// Auswertung der Optionen
        /// </summary>
        /// <param name="args"></param>
        public void Evaluate(string[] args)
        {
            if (args == null)
            {
                return;
            }
            List <string> InputArray_Tmp = new List <string>();

            try {
                cmd.Parse(args);

                foreach (MyOptions opt in Enum.GetValues(typeof(MyOptions)))  // jede denkbare Option testen
                {
                    int    optcount = cmd.OptionAssignment((int)opt);         // Wie oft wurde diese Option verwendet?
                    string arg;
                    if (optcount > 0)
                    {
                        switch (opt)
                        {
                        case MyOptions.Input:
                            for (int i = 0; i < optcount; i++)
                            {
                                InputArray_Tmp.Add(cmd.StringValue((int)opt, i).Trim());
                            }
                            break;

                        case MyOptions.InputWithSubdirs:
                            if (cmd.ArgIsUsed((int)opt))
                            {
                                InputWithSubdirs = cmd.BooleanValue((int)opt);
                            }
                            else
                            {
                                InputWithSubdirs = true;
                            }
                            break;

                        case MyOptions.InputListfile:
                            InputArray_Tmp.AddRange(System.IO.File.ReadAllLines(cmd.StringValue((int)opt)));
                            for (int i = InputArray_Tmp.Count - 1; i >= 0; i--)
                            {
                                InputArray_Tmp[i] = InputArray_Tmp[i].Trim();
                                if (InputArray_Tmp[i].Length == 0)
                                {
                                    InputArray_Tmp.RemoveAt(i);
                                }
                            }
                            break;

                        case MyOptions.Output:
                            Output = cmd.StringValue((int)opt).Trim();
                            break;

                        case MyOptions.OutputOverwrite:
                            if (cmd.ArgIsUsed((int)opt))
                            {
                                OutputOverwrite = cmd.BooleanValue((int)opt);
                            }
                            else
                            {
                                OutputOverwrite = true;
                            }
                            break;

                        case MyOptions.Info:
                            if (cmd.ArgIsUsed((int)opt))
                            {
                                switch (cmd.UnsignedIntegerValue((int)opt))
                                {
                                case 0: ToDo = ToDoType.Info; break;

                                case 1: ToDo = ToDoType.LongInfo; break;

                                case 2: ToDo = ToDoType.ExtLongInfo; break;

                                default: ToDo = ToDoType.VeryLongInfo; break;
                                }
                            }
                            else
                            {
                                ToDo = ToDoType.Info;
                            }
                            break;

                        case MyOptions.Split:
                            if (cmd.ArgIsUsed((int)opt))
                            {
                                arg = cmd.StringValue((int)opt);
                                if (arg == "r")
                                {
                                    ToDo = ToDoType.SplitRecursive;
                                }
                                else if (arg == "j")
                                {
                                    ToDo = ToDoType.SplitJoin;
                                }
                                else if (arg == "rj" || arg == "jr")
                                {
                                    ToDo = ToDoType.SplitRecursiveJoin;
                                }
                            }
                            else
                            {
                                ToDo = ToDoType.Split;
                            }
                            break;

                        case MyOptions.CreateFiles4Mapsource:
                            for (int i = 0; i < optcount; i++)
                            {
                                if (cmd.ArgIsUsed((int)opt, i))
                                {
                                    arg = cmd.StringValue((int)opt, i);
                                    if (!string.IsNullOrEmpty(arg))
                                    {
                                        if (arg.StartsWith("pid:"))
                                        {
                                            PID.Set(InterpretUInt(arg));
                                        }
                                        else if (arg.StartsWith("fid:"))
                                        {
                                            FID.Set(InterpretUInt(arg));
                                        }
                                        else if (arg.StartsWith("cp:"))
                                        {
                                            Codepage.Set(InterpretUInt(arg));
                                            //} else if (arg.StartsWith("ovno:")) {
                                            //   MapsourceOverviewNo.Set(InterpretUInt(arg));
                                        }
                                        else if (arg.StartsWith("ov:"))
                                        {
                                            MapsourceOverviewfile.Set(arg.Substring(3));
                                        }
                                        else if (arg.StartsWith("typ:"))
                                        {
                                            MapsourceTYPfile.Set(arg.Substring(4));
                                        }
                                        else if (arg.StartsWith("tdb:"))
                                        {
                                            MapsourceTDBfile.Set(arg.Substring(4));
                                        }
                                        else if (arg.StartsWith("mdx:"))
                                        {
                                            MapsourceMDXfile.Set(arg.Substring(4));
                                        }
                                        else if (arg.StartsWith("mdr:"))
                                        {
                                            MapsourceMDRfile.Set(arg.Substring(4));
                                        }
                                        else if (arg.StartsWith("tdb:"))
                                        {
                                            MapsourceTDBfile.Set(arg.Substring(4));
                                        }
                                        else if (arg.StartsWith("mindim:"))
                                        {
                                            MapsourceMinDimension.Set(InterpretUInt(arg));
                                        }
                                        else if (arg.StartsWith("points:"))
                                        {
                                            InterpretTypes(arg, MapsourceOVPointtypes);
                                        }
                                        else if (arg.StartsWith("lines:"))
                                        {
                                            InterpretTypes(arg, MapsourceOVLinetypes);
                                        }
                                        else if (arg.StartsWith("areas:"))
                                        {
                                            InterpretTypes(arg, MapsourceOVAreatypes);
                                        }
                                        else if (arg == "noov")
                                        {
                                            MapsourceNoOverviewfile.Set(true);
                                        }
                                        else if (arg == "notyp")
                                        {
                                            MapsourceNoTYPfile.Set(true);
                                        }
                                        else if (arg == "nomdx")
                                        {
                                            MapsourceNoMDXfile.Set(true);
                                        }
                                        else if (arg == "nomdr")
                                        {
                                            MapsourceNoMDRfile.Set(true);
                                        }
                                        else if (arg == "notdb")
                                        {
                                            MapsourceNoTDBfile.Set(true);
                                        }
                                        else if (arg == "noinst")
                                        {
                                            MapsourceNoInstfiles.Set(true);
                                        }
                                        else
                                        {
                                            throw new Exception("unbekanntes Argument: " + arg);
                                        }
                                    }
                                }
                            }
                            ToDo = ToDoType.CreateFiles4Mapsource;
                            break;

                        case MyOptions.Join:
                            if (cmd.ArgIsUsed((int)opt))
                            {
                                arg = cmd.StringValue((int)opt);
                                if (arg == "device")
                                {
                                    ToDo = ToDoType.JoinDevice;
                                }
                                else if (arg == "tile")
                                {
                                    ToDo = ToDoType.JoinTile;
                                }
                            }
                            else
                            {
                                ToDo = ToDoType.Join;
                            }
                            break;

                        case MyOptions.AnalyzingTypes:
                            switch (cmd.UnsignedIntegerValue((int)opt))
                            {
                            case 1: ToDo = ToDoType.AnalyzingTypesLong; break;

                            default: ToDo = ToDoType.AnalyzingTypes; break;
                            }
                            break;


                        case MyOptions.SetPID:
                            PID.Set((int)cmd.UnsignedIntegerValue((int)opt));
                            break;

                        case MyOptions.SetFID:
                            FID.Set((int)cmd.UnsignedIntegerValue((int)opt));
                            break;

                        case MyOptions.SetCodepage:
                            Codepage.Set((int)cmd.UnsignedIntegerValue((int)opt));
                            break;

                        case MyOptions.SetTDBCopyright:
                            for (int j = 0; j < optcount; j++)
                            {
                                arg = cmd.StringValue((int)opt, j);
                                if (arg.Length < 3)
                                {
                                    throw new Exception("Falscher Aufbau der Copyright-Option '" + arg + "'");
                                }
                                else
                                {
                                    switch (arg[0])
                                    {
                                    case 'S':
                                        TDBCopyrightCodes.Add(new Property((int)GarminCore.Files.File_TDB.SegmentedCopyright.Segment.CopyrightCodes.SourceInformation, true));
                                        break;

                                    case 'C':
                                        TDBCopyrightCodes.Add(new Property((int)GarminCore.Files.File_TDB.SegmentedCopyright.Segment.CopyrightCodes.CopyrightInformation, true));
                                        break;

                                    case '*':
                                        TDBCopyrightCodes.Add(new Property((int)GarminCore.Files.File_TDB.SegmentedCopyright.Segment.CopyrightCodes.Unknown, true));
                                        break;

                                    default:
                                        throw new Exception("Falsche Angabe in der Copyright-Option: '" + arg[0] + "'");
                                    }

                                    switch (arg[1])
                                    {
                                    case 'I':
                                        TDBCopyrightWhereCodes.Add(new Property((int)GarminCore.Files.File_TDB.SegmentedCopyright.Segment.WhereCodes.ProductInformation, true));
                                        break;

                                    case 'P':
                                        TDBCopyrightWhereCodes.Add(new Property((int)GarminCore.Files.File_TDB.SegmentedCopyright.Segment.WhereCodes.Printing, true));
                                        break;

                                    case 'E':
                                        TDBCopyrightWhereCodes.Add(new Property((int)GarminCore.Files.File_TDB.SegmentedCopyright.Segment.WhereCodes.ProductInformationAndPrinting, true));
                                        break;

                                    case '*':
                                        TDBCopyrightWhereCodes.Add(new Property((int)GarminCore.Files.File_TDB.SegmentedCopyright.Segment.WhereCodes.Unknown, true));
                                        break;

                                    default:
                                        throw new Exception("Falsche Angabe in der Copyright-Option: '" + arg[1] + "'");
                                    }

                                    switch (arg[2])
                                    {
                                    case 'N':
                                        string sText = arg.Substring(3).Trim();
                                        if (sText.Length >= 2)
                                        {
                                            if (sText[0] == '"' && sText[sText.Length - 1] == '"')
                                            {
                                                sText = sText.Substring(1, sText.Length - 2);
                                            }
                                        }
                                        TDBCopyrightText.Add(new Property(sText, true));
                                        break;

                                    case 'D':
                                        TDBCopyrightText.Add(new Property(null, false));
                                        break;

                                    case '*':
                                        TDBCopyrightText.Add(new Property(null, true));
                                        break;

                                    default:
                                        throw new Exception("Falsche Angabe in der Copyright-Option: '" + arg[1] + "'");
                                    }
                                }
                            }
                            break;

                        case MyOptions.SetDescription:
                            Description.Set(cmd.StringValue((int)opt));
                            break;

                        case MyOptions.SetTransparent:
                            Transparent.Set(cmd.BooleanValue((int)opt) ? 1 : 0);
                            break;

                        case MyOptions.SetPriority:
                            Priority.Set((int)cmd.UnsignedIntegerValue((int)opt));
                            break;

                        case MyOptions.SetMapFamilyName:
                            MapFamilyName.Set(cmd.StringValue((int)opt));
                            break;

                        case MyOptions.SetMapSeriesName:
                            MapSeriesName.Set(cmd.StringValue((int)opt));
                            break;

                        case MyOptions.SetVersion:
                            Version.Set((int)cmd.UnsignedIntegerValue((int)opt));
                            break;

                        case MyOptions.SetRoutable:
                            Routable.Set((int)cmd.UnsignedIntegerValue((int)opt));
                            break;

                        case MyOptions.SetHighestRoutable:
                            HighestRoutable.Set((int)cmd.UnsignedIntegerValue((int)opt));
                            break;

                        case MyOptions.SetHasDEM:
                            HasDEM.Set((int)cmd.UnsignedIntegerValue((int)opt));
                            break;

                        case MyOptions.SetHasProfile:
                            HasProfile.Set((int)cmd.UnsignedIntegerValue((int)opt));
                            break;

                        case MyOptions.SetMaxCoordBits4Overview:
                            MaxCoordBits4Overview.Set((int)cmd.UnsignedIntegerValue((int)opt));
                            break;

                        case MyOptions.RefreshTDB:
                            ToDo = ToDoType.RefreshTDB;
                            break;

                        case MyOptions.NewTypfile:
                            NewTypfile.Set(cmd.StringValue((int)opt));
                            ToDo = ToDoType.SetNewTypfile;
                            break;

                        case MyOptions.Help:
                            ShowHelp();
                            break;
                        }
                    }
                }

                //TestParameter = new string[cmd.Parameters.Count];
                //cmd.Parameters.CopyTo(TestParameter);

                if (cmd.Parameters.Count > 0)
                {
                    throw new Exception("Es sind keine Argumente sondern nur Optionen erlaubt.");
                }

                Input = new string[InputArray_Tmp.Count];
                InputArray_Tmp.CopyTo(Input);
            } catch (Exception ex) {
                Console.Error.WriteLine(ex.Message);
                ShowHelp();
                throw new Exception("Fehler beim Ermitteln oder Anwenden der Programmoptionen.");
            }
        }