由X或Y设置的Vector2属性

时间:2014-02-11 21:46:25

标签: c# variables properties xna

我想问一下如何定义属性Vector2,这样我就可以通过坐标X或Y来存储数据,如下所示:

MyProperty.X = 1;
MyProperty.Y = 2;

现在我的属性代码如下所示:

Vector2 myProperty;
public Vector2 MyProperty
        {
            get
            {
                return myProperty;
            }
            set
            {
                myProperty = value;
            }
        }

但是我无法将值设置为X或Y坐标我只能设置新的Vector2。

1 个答案:

答案 0 :(得分:3)

您不能在XNA中直接修改(或改变)Vector2的属性。你需要做的是这样的事情:

float somevariable = 1f;
MyProperty = new Vector2(MyProperty.X + somevariable, MyProperty.Y - somevariable);

或者

var X = MyProperty.X + 1f;
MyProperty = new Vector2(X, MyProperty.Y);

另请参阅herehere