使用JavaScript自定义的目的目的、自定义、JavaScript

2023-09-07 17:09:30 作者:酒醉出人性

我写一个光线跟踪是我的完整的3D引擎的一部分。我打算使用JavaScript的脚本语言,而不是写我自己。现在的问题是我如何使用它?顺便说一句的光线跟踪和用户界面是用C#。

I am writing a raytracer as a part of my complete 3d engine. I am planning on using javascript for the scripting language instead of writing my own. The question is how can I use it? Btw the raytracer and the UI are written in C#.

推荐答案

这说明JavaScript和C#之间的双向互动。

This shows the two-way interaction between Javascript and c#.

的Javascript调用C#方法 在C#中获取在JavaScript中前pression 的结果

-

Type scriptType = Type.GetTypeFromCLSID(Guid.Parse("0E59F1D5-1FBE-11D0-8FF2-00A0D10038BC"));

dynamic obj = Activator.CreateInstance(scriptType, false);
obj.Language = "javascript";
obj.AddObject("MyClass",new JSAccessibleClass());

obj.Eval("MyClass.MsgBox('Hello World')"); //<--1
var result = obj.Eval("3+5"); //<--2


[ComVisible(true)]
public class JSAccessibleClass
{
    public void MsgBox(string s)
    {
        MessageBox.Show(s);
    }
}