📄 crosshairs.cs
字号:
using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using Microsoft.WindowsMobile.DirectX;
using Microsoft.WindowsMobile.DirectX.Direct3D;
namespace cfWorldWind
{
class Crosshairs
{
//WorldWindow.drawCrossHairs()
public Crosshairs()
{
}
private Line crossHairs;
Vector2[] vertical;
Vector2[] horizontal;
VertexBuffer verticalBuffer;
VertexBuffer horizontalBuffer;
Material crossMaterial;
public void InitializeVertex(Device device, Size form, Color col)
{
crossMaterial = new Material();
crossMaterial.Ambient = col;
crossMaterial.Diffuse = col;
int crossHairSize = 6; //10 on desktop
crossHairs = new Line();
vertical = new Vector2[2];
horizontal = new Vector2[2];
int halfWidth = form.Width / 2;
int halfHeight = form.Height / 2;
horizontal[0].X = halfWidth - crossHairSize;
horizontal[0].Y = halfHeight;
horizontal[1].X = halfWidth + crossHairSize;
horizontal[1].Y = halfHeight;
vertical[0].X = halfWidth;
vertical[0].Y = halfHeight - crossHairSize;
vertical[1].X = halfWidth;
vertical[1].Y = halfHeight + crossHairSize;
verticalBuffer = Line.GetVertexBuffer(device, vertical, col);
horizontalBuffer = Line.GetVertexBuffer(device, horizontal, col);
}
public void RenderVertex(Device device)
{
device.Material = crossMaterial;
device.SetTexture(0, null);
crossHairs.Draw(device, horizontalBuffer);
crossHairs.Draw(device, verticalBuffer);
}
public void RenderVertex(Device device, Color col)
{
device.Material = crossMaterial;
device.SetTexture(0, null);
//crossHairs.Begin();
crossHairs.Draw(device, horizontal, col);
crossHairs.Draw(device, vertical, col);
//crossHairs.End();
}
public void Dispose()
{
if (verticalBuffer != null)
{
verticalBuffer.Dispose();
verticalBuffer = null;
}
if (horizontalBuffer != null)
{
horizontalBuffer.Dispose();
horizontalBuffer = null;
}
}
/*
Pen pen;
Point[] vertical;
Point[] horizontal;
public void Initialize(Size form)
{
int crossHairSize = 6; //10 on desktop
vertical = new Point[2];
horizontal = new Point[2];
int halfWidth = form.Width / 2;
int halfHeight = form.Height / 2;
horizontal[0].X = halfWidth - crossHairSize;
horizontal[0].Y = halfHeight;
horizontal[1].X = halfWidth + crossHairSize;
horizontal[1].Y = halfHeight;
vertical[0].X = halfWidth;
vertical[0].Y = halfHeight - crossHairSize;
vertical[1].X = halfWidth;
vertical[1].Y = halfHeight + crossHairSize;
float penWidth = 1;
pen = new Pen(Color.GhostWhite, penWidth);
}
public void Render(Graphics graphics)
{
graphics.DrawLine(pen, vertical[0].X, vertical[0].Y, vertical[1].X, vertical[1].Y);
graphics.DrawLine(pen, horizontal[0].X, horizontal[0].Y, horizontal[1].X, horizontal[1].Y);
}
*/
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -