138 lines
4.6 KiB
C#
138 lines
4.6 KiB
C#
using System;
|
|
using System.Drawing;
|
|
using System.Drawing.Imaging;
|
|
using System.Drawing.Drawing2D;
|
|
using System.IO;
|
|
|
|
namespace ClassLibrary
|
|
{
|
|
public class Treko
|
|
{
|
|
int fW = 1024; //X resolution of the Cell
|
|
int fH = 768; //Y resolution of the cell
|
|
//double AR = 1;
|
|
|
|
//long Xn, Yn; //Current koord. projection of the cell
|
|
//byte[,] pixR, pxG, pixB;
|
|
|
|
//int glu = 255; //Max intens. lines
|
|
//int gld = 55; //Min intens. lines
|
|
//int TrekW = 10; // Wide of lines
|
|
|
|
////Hologramm variable ====================================================================
|
|
//double Row, Col, Rows, Cols, RowStart, ColStart;
|
|
//double HologW = 50, HologH = 50, HologSx = 0, HologSy = 0, Hologx, Hology; // Size of hologram in pix
|
|
//double LayerW = 50, LayerH = 50, LayerSx = 0, LayerSy = 0, LayerX, LayerY; // Size of hologram in pix
|
|
//double Step = 0.18, Cx, Cy, Rblue = 4.5; // Circle greed
|
|
////double R = 0.4;
|
|
//double R = 4.8;
|
|
//double FrameW = 0.2, FrameH = 0.15; //X size of the cell mm
|
|
//double PicW, PicH, PicSx, PicSy, Picx, Picy, PicMin = 0.5;
|
|
|
|
//int dx = 250, dy = 384; //koord of center of the circle
|
|
//int step = 500; //Step of radius (40 - 900)
|
|
//int StAng = 10, EndAng = 300; //Start & end angle
|
|
|
|
//int Radius = 45000; //Max radiys in Pixels
|
|
|
|
//double st, hw, hwpx, hwpxh;
|
|
|
|
//string[] lines;
|
|
//string[] Bcols;
|
|
//int[,,,,] node;
|
|
|
|
//Bitmap image;
|
|
//Graphics grBack;
|
|
Image btmBack;
|
|
|
|
//string fPath;
|
|
|
|
////public string[][] angstr = { " " }, { "0 0 0 0 0 0 0 0 0" };
|
|
|
|
//Bitmap Fimage;
|
|
//string full_name_of_image = "\0";
|
|
//UInt32[,] pixel;
|
|
int[,] pixels;
|
|
|
|
//private Pen blackPen;
|
|
//private Graphics g;
|
|
////int[,] ColsR = new int[9, 9], ColsG = new int[9, 9], ColsB = new int[9, 9];
|
|
//int[] ColsR, ColsG, ColsB;
|
|
|
|
//public static double[,] blur = new double[3, 3] {{0.111, 0.111, 0.111},
|
|
// {0.111, 0.111, 0.111},
|
|
// {0.111, 0.111, 0.111}};
|
|
|
|
#region properties
|
|
|
|
public int FrameResolution
|
|
{
|
|
get { return fW; }
|
|
set { value = fW; }
|
|
}
|
|
|
|
public Image SourceImage
|
|
{
|
|
get { return btmBack; }
|
|
set { value = btmBack; }
|
|
}
|
|
|
|
public int[,] Pixels
|
|
{
|
|
get { return pixels; }
|
|
set { value = pixels; }
|
|
}
|
|
|
|
#endregion
|
|
|
|
public Treko()
|
|
{
|
|
|
|
}
|
|
|
|
public void DrawArc()
|
|
{
|
|
}
|
|
|
|
//private void CalcTreco()
|
|
//{
|
|
// //AR = fW / FrameW;
|
|
|
|
// //R = 4.8; // mm maximum Radius
|
|
// st = 150 * 0.001; // mm !!!!size dependent !!!
|
|
|
|
// hw = 2 * 0.001; // mm half width
|
|
|
|
// hwpx = Math.Round(hw * 2 * AR / 2) * 2 + 1;
|
|
// hwpxh = Math.Round(hw * 2 * AR / 2);
|
|
|
|
// Xn = Convert.ToInt64(HologSx * AR / fW);
|
|
// Yn = Convert.ToInt64(HologSy * AR / fH);
|
|
// Radius = Convert.ToInt32(R * fW / FrameW);
|
|
//}
|
|
|
|
//public void DefPicSize()
|
|
//{
|
|
// AR = Convert.ToDouble(SourceImage.Width) / Convert.ToDouble(SourceImage.Height);
|
|
// PicW = LayerW - (2 * R);
|
|
// PicH = PicW / AR;
|
|
// LayerH = PicH + (2 * R);
|
|
|
|
// //textBox15.Text = Convert.ToString(LayerH);
|
|
// //textBox20.Text = Convert.ToString(PicW);
|
|
// //textBox19.Text = Convert.ToString(PicH);
|
|
// //textBox18.Text = Convert.ToString(SourceImage.Width);
|
|
// //textBox17.Text = Convert.ToString(SourceImage.Height);
|
|
// //textBox28.Text = Convert.ToString(LayerW / FrameW);
|
|
// //textBox27.Text = Convert.ToString(LayerH / FrameH);
|
|
// //textBox29.Text = Convert.ToString(Convert.ToInt64(LayerH / FrameH));
|
|
// //Step = PicW / Convert.ToDouble(SourceImage.Width);
|
|
// //step = Convert.ToInt32(Step * Convert.ToDouble(fW) / FrameW);
|
|
// //textBox23.Text = Convert.ToString(step);
|
|
// //trackBar1.Value = step;
|
|
// //Draw(Radius);
|
|
//}
|
|
|
|
}
|
|
}
|