add docfx samples.
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
using Hi.Geom;
|
||||
using Hi.Disp;
|
||||
|
||||
namespace Sample.Disp
|
||||
{
|
||||
/// <remarks>
|
||||
/// ### Source Code
|
||||
/// [!code-csharp[SampleCode](~/../Hi.Sample.Wpf/Disp/DemoSatellite.cs)]
|
||||
/// </remarks>
|
||||
public class DemoSatellite : IDisplayee
|
||||
{
|
||||
Drawing sun;
|
||||
Drawing earth;
|
||||
Drawing moon;
|
||||
double angle_earth;
|
||||
double angle_moon;
|
||||
DemoSatellite()
|
||||
{
|
||||
sun = Box3d.CenterUnitBox.ScaleFromCenter(4).ToDraw_Face();
|
||||
earth = Box3d.CenterUnitBox.ScaleFromCenter(2).ToDraw_Face();
|
||||
moon = Box3d.CenterUnitBox.ToDraw_Face();
|
||||
}
|
||||
/// <inheritdoc/>
|
||||
public void Display(Bind bind)
|
||||
{
|
||||
sun.Display(bind);
|
||||
bind.ModelMatStack.Push();
|
||||
bind.ModelMatStack.Mul(new Mat4d(new AxisAngle4d(new Vec3d(0, 0, 1), angle_earth += 0.03)));
|
||||
bind.ModelMatStack.Mul(new Mat4d(new Vec3d(12, 0, 0)));
|
||||
earth.Display(bind);
|
||||
bind.ModelMatStack.Push();
|
||||
bind.ModelMatStack.Mul(new Mat4d(new AxisAngle4d(new Vec3d(0, 0, 1), angle_moon += 0.02)));
|
||||
bind.ModelMatStack.Mul(new Mat4d(new Vec3d(4, 0, 0)));
|
||||
moon.Display(bind);
|
||||
bind.ModelMatStack.Pop();
|
||||
bind.ModelMatStack.Pop();
|
||||
}
|
||||
/// <inheritdoc/>
|
||||
public void ExpandToBox3d(Box3d dst)
|
||||
{
|
||||
dst.Expand(new Vec3d(-14, -14, -2));
|
||||
dst.Expand(new Vec3d(14, 14, 2));
|
||||
}
|
||||
|
||||
static void Main()
|
||||
{
|
||||
DemoUtil.RunApplication("DemoSatellite", new DemoSatellite());
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user