本文整理汇总了C#中IGameObject.getXPosition方法的典型用法代码示例。如果您正苦于以下问题:C# IGameObject.getXPosition方法的具体用法?C# IGameObject.getXPosition怎么用?C# IGameObject.getXPosition使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IGameObject
的用法示例。
在下文中一共展示了IGameObject.getXPosition方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: addGameObject
/// <summary>
///
/// </summary>
/// <param name="gameObject"></param>
/// <param name="parentGameObject"></param>
public void addGameObject(IGameObject gameObject, IGameObject parentGameObject)
{
Debug.Assert(gameObject != parentGameObject, "a gameObject cannot be the parent of himself.");
SceneNode targetSceneNode = SceneNode.getSceneNodeByGameObject(this.sceneNodeTree, parentGameObject);
Debug.Assert(targetSceneNode != null, "no specified parentGameObject found in SceneNode tree");
//set position relative to the parent.
if (parentGameObject != null)
{
double xPositionRelativeToParent = parentGameObject.getXPosition() + gameObject.getXPosition();
double yPositionRelativeToParent = parentGameObject.getYPosition() + gameObject.getYPosition();
gameObject.setPosition(xPositionRelativeToParent, yPositionRelativeToParent);
}
//update the geometry position relative to the gameObject position.
if (gameObject.getBoundingBoxGeometry() != null)
{
gameObject.getBoundingBoxGeometry().Transform = new TranslateTransform(gameObject.getXPosition(), gameObject.getYPosition());
}
targetSceneNode.addChild(new SceneNode(gameObject));
this.registerGameObject(gameObject, this.gameObjectListMapByTag);
}
示例2: BoundingBoxViewerGameObject
public BoundingBoxViewerGameObject(IGameObject gameObject)
{
Debug.Assert(gameObject.getBoundingBoxGeometry() != null, "expected gameObject.getBoundingBoxGeometry() != null");
base._xPosition = gameObject.getBoundingBoxGeometry().Bounds.X - gameObject.getXPosition();
base._yPosition = gameObject.getBoundingBoxGeometry().Bounds.Y - gameObject.getYPosition();
base._gameObjectTag = Tags.DEBUG_TAG;
Brush boundingBoxBrush = gameObject.isCollidable() ? Brushes.Red : Brushes.Yellow;
GeometryDrawing geometryDrawing = new GeometryDrawing(null, new Pen(boundingBoxBrush, 1.0), gameObject.getBoundingBoxGeometry());
DrawingImage boundingBoxDrawingImage = new DrawingImage(geometryDrawing);
Image boundingBoxImage = new Image();
boundingBoxImage.Source = boundingBoxDrawingImage;
base._image = boundingBoxImage;
this.gameObject = gameObject;
this.previousCollidableState = gameObject.isCollidable();
}
示例3: canvasUpdateImage
/// <summary>
///
/// </summary>
/// <param name="gameObject"></param>
public void canvasUpdateImage(IGameObject gameObject)
{
Debug.Assert(gameObject != null, "expected gameObject != null");
Debug.Assert(this.uiThreadImageUidMapByGameObject.ContainsKey(gameObject), "you must display this gameObject before try to update it.");
String uiThreadImageUid = this.uiThreadImageUidMapByGameObject[gameObject];
ImageSource imageSourceFrozen = (ImageSource)gameObject.getImage().Source.GetAsFrozen();
double imageWidth = gameObject.getImage().Width;
double imageHeight = gameObject.getImage().Height;
Stretch streachImage = gameObject.getImage().Stretch;
StretchDirection streachDirection = gameObject.getImage().StretchDirection;
Transform renderTransformFrozen = gameObject.getImage().RenderTransform != null ? (Transform)gameObject.getImage().RenderTransform.GetAsFrozen() : null;
this.targetCanvas.Dispatcher.Invoke(new Action(
delegate()
{
UIElement uiElement = this.uiThreadGetUiElement(uiThreadImageUid);
int zIndex = Canvas.GetZIndex(uiElement);
this.targetCanvas.Children.Remove(uiElement);
Image uiThreadImage = new Image();
uiThreadImage.Uid = uiThreadImageUid;
uiThreadImage.Source = imageSourceFrozen;
uiThreadImage.Width = imageWidth;
uiThreadImage.Height = imageHeight;
uiThreadImage.Stretch = streachImage;
uiThreadImage.StretchDirection = streachDirection;
uiThreadImage.RenderTransform = renderTransformFrozen;
this.targetCanvas.Children.Add(uiThreadImage);
this.uiThreadSetCanvasPosition(uiThreadImage, gameObject.getXPosition(), gameObject.getYPosition(), zIndex);
}
));
}
示例4: canvasDisplayImage
/// <summary>
///
/// </summary>
/// <param name="gameObject"></param>
public void canvasDisplayImage(IGameObject gameObject, int zIndex)
{
Debug.Assert(gameObject != null, "expected gameObject != null");
Debug.Assert(gameObject.getImage() != null, "cannot display this gameObject because its image is null.");
Debug.Assert(!this.uiThreadImageUidMapByGameObject.ContainsKey(gameObject), "this gameObject was already present in the canvas, try to remove it before ask to display again");
Image nonUiThreadImage = gameObject.getImage();
ImageSource imageSourceFrozen = (ImageSource) nonUiThreadImage.Source.GetAsFrozen();
double imageWidth = nonUiThreadImage.Width;
double imageHeight = nonUiThreadImage.Height;
Stretch streachImage = nonUiThreadImage.Stretch;
StretchDirection streachDirection = nonUiThreadImage.StretchDirection;
Transform renderTransformFrozen = (Transform)nonUiThreadImage.RenderTransform.GetAsFrozen();
String uid = Guid.NewGuid().ToString();
this.targetCanvas.Dispatcher.Invoke(new Action(
delegate()
{
Image uiThreadImage = new Image();
uiThreadImage.Uid = uid;
uiThreadImage.Source = imageSourceFrozen;
uiThreadImage.Width = imageWidth;
uiThreadImage.Height = imageHeight;
uiThreadImage.Stretch = streachImage;
uiThreadImage.StretchDirection = streachDirection;
uiThreadImage.RenderTransform = renderTransformFrozen;
this.targetCanvas.Children.Add(uiThreadImage);
this.uiThreadSetCanvasPosition(uiThreadImage, gameObject.getXPosition(), gameObject.getYPosition(), zIndex);
}
));
this.uiThreadImageUidMapByGameObject.Add(gameObject, uid);
}
示例5: GameFloatingLabelObject
public GameFloatingLabelObject(IGameObject generatingObject, string text)
: base(generatingObject.getXPosition(), generatingObject.getYPosition(), text, FLOATING_TIME_MILLIS)
{
}