如何从UnityEngine转换.转换为Media3d.Transform3d

本文关键字:转换 Transform3d Media3d UnityEngine | 更新日期: 2023-09-27 18:13:57

我在最后一行代码上得到这个错误,不知道如何转换

 Cannot implicitly convert type 'UnityEngine.Transform' to 'System.Windows.Media.Media3D.Transform3D'

这是代码:

private void Window_Loaded_1(object sender, RoutedEventArgs e)
    {
        rotire rot = new rotire();
        rot.rotiree();
        mycube.Transform = rot.transform;
    }

方法:

public void rotiree()
    {
        transform.Rotate(new Vector3(15,40,45)*speed,Time.deltaTime);
    }

编辑:Rotire类包含一个旋转立方体的方法。方法名称为"rotire"

立方体是在XAML

中创建的

rotire.cs

    using System.Linq;
using System.Text;
using System.Threading.Tasks;
using UnityEngine;
using System.Collections;
namespace WpfApplication6
{
    class Rotire:MonoBehaviour
    {
        float speed=10f;
        public void rotire()
        {
            transform.Rotate(new Vector3(15,40,45)*speed,Time.deltaTime);
        }
    }
}

如何从UnityEngine转换.转换为Media3d.Transform3d

你在疯狂地混合Unity和WPF。我不认为那是有意的。

在这里你创建一个基于Unity MonoBehavior类的对象:

rotire rot = new rotire();

这应该是一个Media3d类:

mycube

这里你尝试引用Unity转换到Media3d。变换(WPF变换)对象

mycube.Transform = rot.transform; 

这不起作用,因为它们不是相同的类型。你需要在WPF中旋转你的WPF立方体,或者在Unity中旋转你的Unity立方体。