Я делаю столкновение в Windows Phone App для Windows Phone 8 с помощью Microsoft Visual Studio 2012. Я использовал Rect для создания границы прямоугольника для мяч. Я получил эту ошибку. 'System.Windows.Rect' не содержит определения для 'Intersects' и никакого метода расширения 'Intersects', принимающий первый аргумент типа 'System.Windows.Rect', может быть найден (вам не хватает директивы using или ссылки на сборку ?) Коды приведены ниже.'System.Windows.Rect' не содержит определения для 'Intersects' для C#
var greenBallPositionX1 = Canvas.GetLeft(this.greenBall1);
var greenBallPositionY1 = Canvas.GetTop(this.greenBall1);
Rect r1 = new Rect(greenBallPositionX1, greenBallPositionY1, greenBall1.ActualWidth, greenBall1.ActualHeight);
var blueBallPositionX1 = Canvas.GetLeft(this.blueBall1);
var blueBallPositionY1 = Canvas.GetTop(this.blueBall1);
Rect r2 = new Rect(blueBallPositionX1, blueBallPositionY1, blueBall1.ActualWidth, blueBall1.ActualHeight);
if (r1.Intersects(r2))
{
MessageBox.Show("Collision Detected");
}
Используйте '' intersect' как r1.Intersect (r2) ', если пересечение не существует он вернет 'Rect.Empty'. 'if (r1.Intersect (r2)! = Rect.Empty)' – Cyclonecode
@KristerAndersson Он не обнаруживает его. –
Нужно посмотреть на документацию? Метод 'Intersect()' класса 'Rect' возвращает прямоугольник пересечения или' Rect.Empty', если пересечение не найдено. – Cyclonecode