/// <summary> /// 构造函数 /// </summary> public MapgisToolSubMenu() { InitializeComponent(); fishMenu = new FishEyeMenuH(); this.ResizeControl(); this.LayoutRoot.Children.Add(fishMenu); this.Loaded += new RoutedEventHandler(OnLoaded); MapDocEditor = new MapDocEditor(catalog) { IsPopup = true }; mapDocDataViewer = new MapDocDataViewer() { IsPopup = true }; //, MapDocEditorObj = MapDocEditor }; mapDocConditionInput = new ConditionInput(mapDocDataViewer) { IsPopup = true }; this.BorderThickness = new Thickness(0); LayerEditor = new LayerEditor(catalog) { IsPopup = true }; layerDataViewer = new LayerDataViewer() { IsPopup = true }; //, LayerEditorObj = LayerEditor }; layerConditionInput = new LayerConditionInput(layerDataViewer) { IsPopup = true }; }
public Toolbar() { InitializeComponent(); MapDocEditor = new MapDocEditor(m_catalog) { IsPopup = true }; m_mapDocDataViewer = new MapDocDataViewer() { IsPopup = true }; //, MapDocEditorObj = MapDocEditor }; m_mapDocConditionInput = new ConditionInput(m_mapDocDataViewer) { IsPopup = true }; this.BorderThickness = new Thickness(0); LayerEditor = new LayerEditor(m_catalog) { IsPopup = true }; m_layerDataViewer = new LayerDataViewer() { IsPopup = true }; //, LayerEditorObj = LayerEditor }; m_layerConditionInput = new LayerConditionInput(m_layerDataViewer) { IsPopup = true }; }
public override void CreateInDesignMode(LayerEditor parentLayer, IEntityCreationProperties creationProperties) { _polygon = new Vector2[4]; ParentLayer = parentLayer; string fullPath = null; // creationProperties.Parameters[@"FullPath"]; initialiseTexture(fullPath); _properties = new TexturedHullProperties { //todo: need filename Position = MouseStatus.WorldPosition, TexturePathRelativeToContentRoot = makeRelativePath(new PathToFolder(parentLayer.ParentLevel.ContentRootFolder), fullPath), CustomProperties = new CustomProperties( ), Visible = true, Scale = Vector2.One, TintColor = Color.White, }; _properties.Origin = getTextureOrigin( ); WhenUpdatedByUi( ); }
public override void RecreateFromXml(LayerEditor parentLayer, XElement xml) { base.RecreateFromXml(parentLayer, xml); ParentLayer = parentLayer; _properties = xml.CertainElement(@"LightProperties").DeserializedAs <LightProperties>( ); }
/// <summary> /// 构造函数 /// </summary> public MapgisToolSubMenu() { MapDocEditor = new MapDocEditor(catalog) { IsPopup = true }; mapDocDataViewer = new MapDocDataViewer() { IsPopup = true }; mapDocConditionInput = new ConditionInput(mapDocDataViewer) { IsPopup = true }; this.Loaded += new RoutedEventHandler(OnLoaded); LayerEditor = new LayerEditor(catalog) { IsPopup = true }; layerDataViewer = new LayerDataViewer() { IsPopup = true }; layerConditionInput = new LayerConditionInput(layerDataViewer) { IsPopup = true }; }
public override void CreateInDesignMode( LayerEditor parentLayer, IEntityCreationProperties creationProperties) { _polygon = new Vector2[4]; ParentLayer = parentLayer; var tCreationProperties = (TextureCreationProperties)creationProperties; string fullPath = tCreationProperties.PathToTexture; tryInitialiseTexture(fullPath); // ReSharper disable UseObjectOrCollectionInitializer _properties = new TextureItemProperties // ReSharper restore UseObjectOrCollectionInitializer { Position = MouseStatus.WorldPosition, TexturePathRelativeToContentRoot = ObjectFactory.GetInstance <IDisk>().MakeRelativePath(parentLayer.ParentLevel.ContentRootFolder, fullPath), CustomProperties = new CustomProperties(), Visible = true, Scale = Vector2.One, TintColor = Color.White, }; _properties.Origin = getTextureOrigin(); WhenUpdatedByUi(); }
public override void RecreateFromXml(LayerEditor parentLayer, XElement xml) { base.RecreateFromXml(parentLayer, xml); ParentLayer = parentLayer; _properties = xml.Element(@"RectangularHullProperties").DeserializedAs <RectangularHullProperties>( ); WhenUpdatedByUi( ); }
public override void RecreateFromXml(LayerEditor parentLayer, XElement xml) { base.RecreateFromXml(parentLayer, xml); _editorMode = ItemEditorMode.Created; ParentLayer = parentLayer; _properties = xml.Element(@"ConvexHullProperties").DeserializedAs <ConvexHullProperties>( ); WhenUpdatedByUi( ); }
public override void RecreateFromXml(LayerEditor parentLayer, XElement xml) { ParentLayer = parentLayer; _properties = xml.Element(@"RectangleItemProperties").DeserializedAs <RectangleItemProperties>( ); //todo: don't like having to call the base - use the Prototype base.RecreateFromXml(parentLayer, xml); WhenUpdatedByUi( ); }
void OnAddArea(GraphicsLayer gLayer, IGraphics graphics, List <Point> logPntArr) { if (m_catalog.ActiveMapDoc.Display) { MapDocEditor.AddArea(gLayer, graphics, logPntArr); } if (m_catalog.ActiveLayerObj.Display) { LayerEditor.AddArea(gLayer, graphics, logPntArr); } }
void activeLayerChanged(object sender, EventArgs e) { LayerEditor layer = _model.Level.ActiveLayer; if (layer == null) { SetToolStripStatusLabel1("Layer: (none)"); } else { SetToolStripStatusLabel2("Layer: " + layer.Name); } }
public override void RecreateFromXml(LayerEditor parentLayer, XElement xml) { base.RecreateFromXml(parentLayer, xml); _polygon = new Vector2[4]; ParentLayer = parentLayer; _properties = xml.Element(@"TextureItemProperties").DeserializedAs <TextureItemProperties>(); tryInitialiseTexture(_properties.TexturePathRelativeToContentRoot); WhenUpdatedByUi(); }
public override void CreateInDesignMode(LayerEditor parentLayer, IEntityCreationProperties creationProperties) { ParentLayer = parentLayer; _properties = fromRectangle(Rectangle.Empty); _properties.Position = MouseStatus.WorldPosition; _properties.Visible = true; _properties.Opacity = 1f; _properties.Scale = Vector2.One; _properties.Rotation = 0f; summonMainForm( ).SetToolStripStatusLabel1(Resource1.Rectangle_Entered); WhenUpdatedByUi(); }
public override void CreateInDesignMode(LayerEditor parentLayer, IEntityCreationProperties creationProperties) { _editorMode = ItemEditorMode.Creating; Vector2 mouseWorldPos = MouseStatus.WorldPosition; _properties = new ConvexHullProperties { Visible = true, Position = mouseWorldPos, WorldPoints = new List <Vector2>(), LocalPoints = new List <Vector2>(), Opacity = 1f, }; ParentLayer = parentLayer; var shapeSelectionForm = new ShapeSelectionForm( v => { _properties.WorldPoints.Clear( ); _properties.LocalPoints.Clear( ); v.ForEach(vt => addWorldPoint(mouseWorldPos + vt)); WhenUpdatedByUi( ); }) { TopLevel = true }; shapeSelectionForm.FormClosed += (s, e) => { if (shapeSelectionForm.Action == DialogResult.OK) { _editorMode = ItemEditorMode.Created; PreviewEndedReadyForCreation(this, EventArgs.Empty); } }; shapeSelectionForm.Show(); summonMainForm( ).SetToolStripStatusLabel1(Resource1.PreShapedHull_Entered); }
public override void CreateInDesignMode(LayerEditor parentLayer, IEntityCreationProperties creationProperties) { ParentLayer = parentLayer; _properties = new CircularHullProperties { Visible = true, Position = MouseStatus.WorldPosition, Radius = 10f, Scale = Vector2.One, Opacity = 1f, Sides = 10, FillColor = Color.Black }; summonMainForm( ).SetToolStripStatusLabel1(Resource1.Circle_Started); }
public override void CreateInDesignMode(LayerEditor parentLayer, IEntityCreationProperties creationProperties) { ParentLayer = parentLayer; _properties = new LightProperties { Visible = true, IsOn = true, Range = 100f, Color = Color.White, FieldOfView = MathHelper.TwoPi, Intensity = 1, ShadowType = convertShadowType(ShadowType.Solid), Position = MouseStatus.WorldPosition, TextureSize = 128 }; }
public override void CreateInDesignMode(LayerEditor parentLayer, IEntityCreationProperties creationProperties) { ParentLayer = parentLayer; _properties = new CircleItemProperties { Visible = true, Position = MouseStatus.WorldPosition, Radius = 0f, FillColor = Constants.Instance.ColorPrimitives }; if (creationProperties.TriggeredBy == UiAction.Dragging) { _properties.Radius = Constants.Instance.GridSpacing.X; } summonMainForm( ).SetToolStripStatusLabel1(Resource1.Circle_Started); }
public virtual void CreateReadyForDroppingOntoCanvas(LayerEditor parentLayer, IEntityCreationProperties creationProperties) { ParentLayer = parentLayer; _properties = fromRectangle(Rectangle.Empty); _properties.Position = MouseStatus.WorldPosition; Vector2 size = calculateDefaultSizeOfNewlyCreatedItem(); _properties.Width = size.X; _properties.Height = size.Y; _properties.Visible = true; _properties.FillColor = Constants.Instance.ColorPrimitives; summonMainForm( ).SetToolStripStatusLabel1(Resource1.Rectangle_DragDrop); WhenUpdatedByUi(); }
void OnAddArea(GraphicsLayer gLayer, IGraphics graphics, List <Point> logPntArr) { if (catalog.ActiveMapDoc == null) { MessageBox.Show("请激活一个矢量(文档)的图层!"); return; } if (catalog.ActiveMapDoc.Display) { MapDocEditor.AddArea(gLayer, graphics, logPntArr); } if (catalog.ActiveLayerObj == null) { MessageBox.Show("请激活一个矢量图层!"); return; } if (catalog.ActiveLayerObj.Display) { LayerEditor.AddArea(gLayer, graphics, logPntArr); } }
/// <summary> /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void OnActiveLayerInterfaceChanged(object sender, BindableValueChangedEventArgs <EditorLayerInterface> e) { switch (e.Value) { case EditorLayerInterface.Composition: LayerCompositor.ClearAnimations(); LayerCompositor.MoveToX(0, Easing.OutQuint, 350); LayerEditor.ClearAnimations(); LayerEditor.MoveToX(LayerEditor.Width, Easing.OutQuint, 350); break; case EditorLayerInterface.Editing: LayerCompositor.ClearAnimations(); LayerCompositor.MoveToX(LayerCompositor.Width, Easing.OutQuint, 350); LayerEditor.ClearAnimations(); LayerEditor.MoveToX(0, Easing.OutQuint, 350); break; default: throw new ArgumentOutOfRangeException(); } }
public override void CreateInDesignMode(LayerEditor parentLayer, IEntityCreationProperties creationProperties) { ParentLayer = parentLayer; _properties = fromRectangle(Rectangle.Empty); if (creationProperties.TriggeredBy == UiAction.Dragging) { var size = calculateDefaultSizeOfNewlyCreatedItem(); _properties.Width = size.X; _properties.Height = size.Y; } _properties.Position = MouseStatus.WorldPosition; _properties.Visible = true; _properties.FillColor = Constants.Instance.ColorPrimitives; summonMainForm( ).SetToolStripStatusLabel1(Resource1.Rectangle_Started); WhenUpdatedByUi(); }
public override void CreateInDesignMode(LayerEditor parentLayer, IEntityCreationProperties creationProperties) { _editorMode = ItemEditorMode.Creating; Vector2 mouseWorldPos = MouseStatus.WorldPosition; _properties = new ConvexHullProperties { Visible = true, Position = mouseWorldPos, WorldPoints = new List <Vector2>(), LocalPoints = new List <Vector2>(), Opacity = 1f, }; addWorldPoint(mouseWorldPos); summonMainForm( ).SetToolStripStatusLabel1(Resource1.Path_Entered); ParentLayer = parentLayer; WhenUpdatedByUi( ); }
public MainWndDataContext(Fontogram fgPreview, LayerEditor layerEditor) { _FgPreview = fgPreview; _LayerEditor = layerEditor; _LayerEditor.SetLayerCreator(this); _LayerEditor.LayersChanged += _LayerEditor_LayersChanged; _ExportBitmapCommand = new ExportBitmapCommand(this); _CodegenXaml = new CodegenXaml(fgPreview); _CodegenCsharp = new CodegenCsharp(fgPreview); foreach (var readyMadeID in (ReadyMadeFontogram[])Enum.GetValues(typeof(ReadyMadeFontogram))) { ReadyMadeFontogramChoices.Add(readyMadeID); } this.ReadyMadeFontogramSelection = 0; // default is "none" - an item separate from ReadyMadeFontogramChoices }
public override void CreateInDesignMode(LayerEditor parentLayer, IEntityCreationProperties creationProperties) { _editorMode = ItemEditorMode.Creating; Vector2 mouseWorldPos = MouseStatus.WorldPosition; _properties = new PathItemProperties { Visible = true, Position = mouseWorldPos, WorldPoints = new List <Vector2>(), LocalPoints = new List <Vector2>(), LineWidth = Constants.Instance.DefaultPathItemLineWidth, LineColor = Constants.Instance.ColorPrimitives }; addWorldPoint(mouseWorldPos); summonMainForm( ).SetToolStripStatusLabel1(Resource1.Path_Started); ParentLayer = parentLayer; WhenUpdatedByUi( ); }
public CopySelectedEditorsToLayerAction(LayerEditor layer) { _layer = layer; }
public override void RecreateFromXml( LayerEditor parentLayer, XElement xml ) { base.RecreateFromXml( parentLayer, xml ); ParentLayer = parentLayer ; _properties = xml.CertainElement( @"LightProperties" ).DeserializedAs<LightProperties>( ) ; }
public override void RecreateFromXml( LayerEditor parentLayer, XElement xml ) { base.RecreateFromXml( parentLayer, xml ); _editorMode = ItemEditorMode.Created ; ParentLayer = parentLayer ; _properties = xml.Element( @"PathItemProperties" ).DeserializedAs<PathItemProperties>( ) ; WhenUpdatedByUi( ); }
public override void RecreateFromXml( LayerEditor parentLayer, XElement xml ) { base.RecreateFromXml( parentLayer, xml ); ParentLayer = parentLayer ; _properties = xml.Element( @"CircleItemProperties" ).DeserializedAs<CircleItemProperties>( ) ; }
public override void RecreateFromXml( LayerEditor parentLayer, XElement xml ) { base.RecreateFromXml( parentLayer, xml ); ParentLayer = parentLayer ; _properties = xml.Element( @"RectangularHullProperties" ).DeserializedAs<RectangularHullProperties>( ) ; WhenUpdatedByUi( ); }
public override void CreateInDesignMode(LayerEditor parentLayer, IEntityCreationProperties creationProperties) { _editorMode = ItemEditorMode.Creating ; Vector2 mouseWorldPos = MouseStatus.WorldPosition ; _properties = new ConvexHullProperties { Visible = true, Position = mouseWorldPos, WorldPoints = new List<Vector2>(), LocalPoints = new List<Vector2>(), Opacity = 1f, } ; addWorldPoint( mouseWorldPos ); summonMainForm( ).SetToolStripStatusLabel1(Resource1.Path_Entered); ParentLayer = parentLayer ; WhenUpdatedByUi( ); }
public override void RecreateFromXml( LayerEditor parentLayer, XElement xml ) { ParentLayer = parentLayer ; base.RecreateFromXml( parentLayer, xml ); _properties = xml.CertainElement( @"CircularHullProperties" ).DeserializedAs<CircularHullProperties>( ) ; }
public void MoveLayerUp( LayerEditor layer ) { _memento.Record(@"Move Down Layer '{0}'".FormatWith(layer.Name), () => { int index = Level.Layers.IndexOf( layer ) ; Level.Layers[ index ] = Level.Layers[ index - 1 ] ; Level.Layers[ index - 1 ] = layer ; tryFire( ( ) => ItemsRearrangedInLayer, (ITreeItem) layer ) ; SelectLayer( layer ) ; }); }
public void MoveSelectedItemsToLayer( LayerEditor chosenLayer ) { if( chosenLayer == Level.ActiveLayer ) { return ; } _memento.BeginCommand( @"Move Item(s) To Layer '{0}'".FormatWith(chosenLayer.Name) ) ; Level.MoveSelectedIditorsToLayer( chosenLayer ) ; tryFire( ( ) => ItemsMoved, Level.SelectedEditors ) ; }
public virtual void CreateReadyForDroppingOntoCanvas(LayerEditor parentLayer, IEntityCreationProperties creationProperties) { ParentLayer = parentLayer ; _properties = fromRectangle( Rectangle.Empty ) ; _properties.Position = MouseStatus.WorldPosition ; Vector2 size = calculateDefaultSizeOfNewlyCreatedItem(); _properties.Width = size.X; _properties.Height = size.Y; _properties.Visible = true ; _properties.FillColor = Constants.Instance.ColorPrimitives ; summonMainForm( ).SetToolStripStatusLabel1(Resource1.Rectangle_DragDrop); WhenUpdatedByUi(); }
public override void CreateInDesignMode(LayerEditor parentLayer, IEntityCreationProperties creationProperties) { ParentLayer = parentLayer ; _properties = fromRectangle( Rectangle.Empty ) ; if (creationProperties.TriggeredBy == UiAction.Dragging) { var size = calculateDefaultSizeOfNewlyCreatedItem(); _properties.Width = size.X; _properties.Height = size.Y; } _properties.Position = MouseStatus.WorldPosition ; _properties.Visible = true ; _properties.FillColor = Constants.Instance.ColorPrimitives ; summonMainForm( ).SetToolStripStatusLabel1(Resource1.Rectangle_Started); WhenUpdatedByUi(); }
public void SelectLayer( LayerEditor layer ) { if( Level.SelectedEditors.Any( ) ) { Level.ClearSelectedEditors( ) ; } setActiveLayerIfItsDifferent( layer ) ; tryFire( ( ) => SelectionChanged, (ITreeItem) layer ) ; }
public override void RecreateFromXml(LayerEditor parentLayer, XElement xml) { base.RecreateFromXml(parentLayer, xml); ParentLayer = parentLayer; _properties = xml.Element(@"CircleItemProperties").DeserializedAs <CircleItemProperties>( ); }
public override void CreateInDesignMode(LayerEditor parentLayer, IEntityCreationProperties creationProperties) { ParentLayer = parentLayer ; _properties= new LightProperties { Visible=true, IsOn = true, Range=100f, Color=Color.White, FieldOfView = MathHelper.TwoPi, Intensity = 1, ShadowType = convertShadowType( ShadowType.Solid), Position = MouseStatus.WorldPosition, TextureSize = 128 } ; }
void setActiveLayerIfItsDifferent( LayerEditor layer ) { if( ActiveLayer == layer ) { return ; } Level.SelectLayer( layer ) ; var eventHandler = ActiveLayerChanged ; if( eventHandler != null ) { eventHandler( this, EventArgs.Empty ) ; } }
public void MoveItemToLayer( ItemEditor itemToMove, LayerEditor layer, ItemEditor itemToMoveNewItemUnder ) { int insertPosition = itemToMoveNewItemUnder == null ? 0 : layer.Items.IndexOf( itemToMoveNewItemUnder ) ; itemToMove.ParentLayer.Items.Remove( itemToMove ) ; layer.Items.Insert( insertPosition, itemToMove ) ; itemToMove.ParentLayer = layer ; }
public void CopySelectedItemsToLayer( LayerEditor layer ) { if( layer == ActiveLayer ) { return ; } List<ItemEditor> clonedEditors = null; _memento.Record(@"Copy Item(s) To Layer '{0}'".FormatWith(layer.Name), () => { clonedEditors = Level.CopySelectedEditorsToLayer( layer ).ToList( ) ; }); Level.SelectEditors( new SelectedEditors( clonedEditors ) ) ; tryFire( ( ) => ItemsAddedOrRemoved, clonedEditors ) ; }
public void DuplicateLayer( LayerEditor layer ) { LayerEditor copiedLayer = layer.Clone( ) ; copiedLayer.Name = layer.ParentLevel.GetUniqueNameBasedOn( copiedLayer.Name ) ; foreach( ItemEditor eachCopiedItem in copiedLayer.Items ) { eachCopiedItem.ItemProperties.Name = layer.ParentLevel.GetUniqueNameBasedOn( eachCopiedItem.ItemProperties.Name ) ; } IMainForm mainForm = IoC.MainForm ; _memento.Record(@"Duplicate Layer '{0}'".FormatWith(layer.Name), () => AddNewLayer( copiedLayer )); tryFire( ( ) => ItemsAddedOrRemoved, (ITreeItem) copiedLayer ) ; mainForm.LevelExplorer.Rebuild( ) ; }
public override void CreateInDesignMode(LayerEditor parentLayer, IEntityCreationProperties creationProperties) { ParentLayer = parentLayer ; _properties = fromRectangle( Rectangle.Empty ) ; _properties.Position = MouseStatus.WorldPosition ; _properties.Visible = true ; _properties.Opacity = 1f ; _properties.Scale = Vector2.One ; _properties.Rotation = 0f ; summonMainForm( ).SetToolStripStatusLabel1(Resource1.Rectangle_Entered); WhenUpdatedByUi(); }
public CopySelectedEditorsToLayerAction(LayerEditor layer ) { _layer = layer ; }
public override void CreateInDesignMode(LayerEditor parentLayer, IEntityCreationProperties creationProperties) { ParentLayer = parentLayer ; _properties= new CircleItemProperties { Visible=true, Position = MouseStatus.WorldPosition, Radius = 0f, FillColor = Constants.Instance.ColorPrimitives } ; if (creationProperties.TriggeredBy == UiAction.Dragging) { _properties.Radius = Constants.Instance.GridSpacing.X; } summonMainForm( ).SetToolStripStatusLabel1(Resource1.Circle_Started); }
public void DeleteLayer( LayerEditor layer ) { _memento.Record(@"Delete Layer '{0}'".FormatWith(layer.Name), () => Level.Layers.Remove( layer )); tryFire( ( ) => ItemsAddedOrRemoved, (ITreeItem) layer ) ; LayerEditor nextChoiceOfLayerToSelect = Level.Layers.Count > 0 ? Level.Layers.Last( ) : null ; if( nextChoiceOfLayerToSelect != null ) { setActiveLayerIfItsDifferent( nextChoiceOfLayerToSelect ) ; } }
public override void CreateInDesignMode(LayerEditor parentLayer, IEntityCreationProperties creationProperties) { _editorMode = ItemEditorMode.Creating ; Vector2 mouseWorldPos = MouseStatus.WorldPosition ; _properties = new PathItemProperties { Visible = true, Position = mouseWorldPos, WorldPoints = new List<Vector2>(), LocalPoints = new List<Vector2>(), LineWidth = Constants.Instance.DefaultPathItemLineWidth, LineColor = Constants.Instance.ColorPrimitives } ; addWorldPoint( mouseWorldPos ); summonMainForm( ).SetToolStripStatusLabel1(Resource1.Path_Started); ParentLayer = parentLayer ; WhenUpdatedByUi( ); }
public IEnumerable<ItemEditor> CopySelectedEditorsToLayer( LayerEditor destinationLayer ) { var selectedEditors = SelectedEditors.ToList( ) ; foreach( ItemEditor eachEditor in selectedEditors ) { ItemEditor clonedEditor = eachEditor.Clone( ) ; clonedEditor.ParentLayer = destinationLayer ; clonedEditor.ItemProperties.Name = destinationLayer.ParentLevel.GetUniqueNameBasedOn( clonedEditor.ItemProperties.Name ) ; destinationLayer.AddEditor( clonedEditor ); clonedEditor.ItemProperties.Id = generateId( ) ; yield return clonedEditor ; } }
public void AddNewLayer( LayerEditor layer ) { layer.ParentLevel = Level ; Level.Layers.Add( layer ) ; tryFire( ( ) => ItemsAddedOrRemoved, new[ ] { layer } ) ; SelectLayer( layer ) ; }
public void MoveSelectedIditorsToLayer( LayerEditor chosenLayer ) { var selected = SelectedEditors.ToList( ) ; foreach( var eachSelectedEditor in selected ) { ActiveLayer.RemoveEditor( eachSelectedEditor ) ; eachSelectedEditor.ParentLayer = chosenLayer ; chosenLayer.AddEditor( eachSelectedEditor ); } }
void rebuild( ) { _krypton.Lights.Clear( ); _krypton.Hulls.Clear( ); LayerEditor activeLayer = IoC.Model.ActiveLayer; if (activeLayer == null) { return; } activeLayer.OfType <LightEditor>( ).ForEach( light => { var props = (LightProperties)light.ItemProperties; Texture2D texture; if (props.TypeOfLight == TypeOfLight.Point) { texture = LightTextureBuilder.CreatePointLight(_game.GraphicsDevice, props.TextureSize); } else { texture = LightTextureBuilder.CreateConicLight(_game.GraphicsDevice, props.TextureSize, props.FieldOfView); } if (texture == null) { throw new InvalidOperationException(@"Cannot create light of type {0}.".FormatWith(props.TypeOfLight)); } _krypton.Lights.Add(new Light2D { Angle = props.Rotation, Color = props.Color, Intensity = props.Intensity, Fov = props.FieldOfView, Position = props.Position, IsOn = props.IsOn, Range = props.Range, ShadowType = convertShadowType(props.ShadowType), Texture = texture }); }); activeLayer.OfType <RectangularHullEditor>( ).ForEach( light => { var props = (RectangularHullProperties)light.ItemProperties; ShadowHull shadowHull = ShadowHull.CreateRectangle(new Vector2(props.Width, props.Height)); shadowHull.Angle = props.Rotation; shadowHull.Opacity = props.Opacity; shadowHull.Position = props.Position + new Vector2(props.Width / 2, props.Height / 2); shadowHull.Scale = props.Scale; shadowHull.Visible = props.Visible; _krypton.Hulls.Add(shadowHull); }); activeLayer.OfType <CircularHullEditor>( ).ForEach( light => { var props = (CircularHullProperties)light.ItemProperties; ShadowHull shadowHull = ShadowHull.CreateCircle(props.Radius, props.Sides); shadowHull.Opacity = props.Opacity; shadowHull.Position = props.Position; shadowHull.Scale = props.Scale; shadowHull.Visible = props.Visible; _krypton.Hulls.Add(shadowHull); }); activeLayer.OfType <ConvexHullEditor>( ).ForEach( light => { var props = (ConvexHullProperties)light.ItemProperties; Vector2[] worldPoints = props.WorldPoints.ToArray( ); // === DON'T SET THE POSITION!! === ShadowHull shadowHull = ShadowHull.CreateConvex(ref worldPoints); shadowHull.Opacity = props.Opacity; shadowHull.Visible = props.Visible; _krypton.Hulls.Add(shadowHull); }); activeLayer.OfType <PreShapedConvexHullEditor>( ).ForEach( light => { var props = (ConvexHullProperties)light.ItemProperties; Vector2[] worldPoints = props.WorldPoints.ToArray( ); // === DON'T SET THE POSITION!! === ShadowHull shadowHull = ShadowHull.CreateConvex(ref worldPoints); shadowHull.Opacity = props.Opacity; shadowHull.Visible = props.Visible; _krypton.Hulls.Add(shadowHull); }); }
public override void RecreateFromXml( LayerEditor parentLayer, XElement xml ) { base.RecreateFromXml( parentLayer, xml ); _polygon = new Vector2[ 4 ] ; ParentLayer = parentLayer ; _properties = xml.Element( @"TexturedHullProperties" ).DeserializedAs<TexturedHullProperties>( ) ; initialiseTexture( _properties.TexturePathRelativeToContentRoot ) ; WhenUpdatedByUi( ) ; }
LayerEditor copyLayer( Legacy.Layer oldLayer ) { var newLayer = new LayerEditor( null, oldLayer.Name ) { Visible = oldLayer.Visible, ScrollSpeed = oldLayer.ScrollSpeed } ; convertCustomProperties( oldLayer.CustomProperties, newLayer.ItemProperties.CustomProperties) ; newLayer.Items.AddRange( oldLayer.Items.Select( convertItem ) ) ; newLayer.Items.ForEach( i => i.ParentLayer = newLayer ) ; return newLayer ; }
public override void CreateInDesignMode(LayerEditor parentLayer, IEntityCreationProperties creationProperties) { ParentLayer = parentLayer ; _properties= new CircularHullProperties { Visible=true, Position = MouseStatus.WorldPosition, Radius = 10f, Scale = Vector2.One, Opacity = 1f, Sides = 10, FillColor = Color.Black } ; summonMainForm( ).SetToolStripStatusLabel1(Resource1.Circle_Started); }
public void SelectLayer( LayerEditor value ) { clearAllSelections( ) ; ActiveLayer = value ; }
public DuplicateLayerAction(LayerEditor layer) { _layer = layer; }
public override void RecreateFromXml( LayerEditor parentLayer, XElement xml ) { ParentLayer = parentLayer ; _properties = xml.Element( @"RectangleItemProperties" ).DeserializedAs<RectangleItemProperties>( ) ; //todo: don't like having to call the base - use the Prototype base.RecreateFromXml( parentLayer, xml ); WhenUpdatedByUi( ); }
public SelectLayerAction(LayerEditor layer) { _layer = layer; }
public Resizer(LayerEditor editor) { Editor = editor; }
public SelectLayerAction( LayerEditor layer ) { _layer = layer ; }