. , . ().
, . , , : , ; , , ; , ; , , . : , . . . , : , , , CMMI, . , , , .
. , , , , . , . , , . , . ( ), . , , , , . .
|
|
: , . , , . , , , , .
, ( ). , , , . , , . , , , , . , . : ; ; ; ; ; . : , , , . , , . ( ) , . , ( ), . ( ), , , , . , . .
|
|
. , . , , , . (, ), . CMMI ( ) . CMMI , , . , Z-, - (), UMLSec, . Z- , .
Z , ISO (ISO/IEC 13568:2002). Z- , , -, . , . Z , Z - . Z- . . B- , Z-. - , , , . , , , . Z-, B- . . , . UMLSec UML, . , , . UMLSec . UMLSec , .
|
|
, UMLSec, . , , , , . UMLSec . UMLSec, . , , UMLSec. , , , . , , . , , , . (checklist), , . .
. , , . , , . . , , , (, ), . Ada95. , , , , , , Ada 95 . , , , - .
|
|
, (C#, Java, Ada95) , . , , . , , , , , . , . , . , , . , . , , , . , . , , UMLSec , , , , , .
:
1. xakep.ru. : (https://xakep.ru/2011/08/03/56389/) ( 25.08.2016). - 13 : MICROSOFT
2. . : (https://www.infotecs.ru/press/publications/detail.php?ID=15041) ( 25.08.2016). -
3. . ., . . . 2009. . 1-3.
4. . : (https://habrahabr.ru/company/microsoft/blog/134464/) ( 25.08.2016). - → . SDL
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication5
{
public partial class Form1: Form
{
public Form1()
{
InitializeComponent();
}
Color cl = new Color(); //
Color cl2 = new Color(); //
Color cl3 = new Color(); //
Pen pen; //
SolidBrush brush,brush1;
int Rk,Rs,k; //
// Graphics g; //
void Work()
{
// Pen pen;
Bitmap bmp = new Bitmap(400, 200); // pictureBox
pictureBox1.Image = bmp; // pictureBox
Graphics g = Graphics.FromImage(bmp); //
bmp = new Bitmap("E:\\.PNG"); //
Rectangle r = new Rectangle();
double p;
int w, h;
w = bmp.Width; //
h = bmp.Height; //
|
|
r.X = 0;
r.Y = 0;
p = h;
r.Width = 400;
r.Height = (int)Math.Floor(p / w * r.Width); //
g.DrawImage(bmp, r);
// Color cl, cl3, cl2;
if (colorDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK) // ?
{
cl = colorDialog1.Color; // RGB
if (colorDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK) // ?
{
cl2 = colorDialog1.Color; // RGB
if (colorDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK) // ?
{
// g.FillRectangle(brush, 100, 100, 150, 150); //
cl3 = colorDialog1.Color; // RGB
}
}
}
pen = new Pen(cl); //
brush1 = new SolidBrush(cl2);
brush = new SolidBrush(cl3);
g.DrawLine(pen, 50, 40, 29, 10);
g.DrawLine(pen, 10, 40, 29, 10);
g.DrawLine(pen, 10, 40, 50, 40);
g.DrawLine(pen, 20, 40, 20, 140); //
g.DrawLine(pen, 40, 40, 40, 140); //
g.DrawLine(pen, 10, 140, 50, 140); //
g.DrawLine(pen, 10, 150, 50, 150); //
g.DrawLine(pen, 10, 140, 10, 150); //
g.DrawLine(pen, 50, 140, 50, 150); //
g.DrawEllipse(pen, 25, 120, 10, 10);
g.DrawEllipse(pen, 25, 100, 10, 10);
g.DrawEllipse(pen, 25, 80, 10, 10);
g.DrawEllipse(pen, 25, 60, 10, 10);
g.DrawEllipse(pen, 25, 40, 10, 10);
}
private void Form1_Load(object sender, EventArgs e)
{
timer1.Interval = 500; // (0,5 )
Work();
}
private void timer1_Tick(object sender, EventArgs e) // Tick
{
Animate(); // Interval (0,5 )
}
void Animate()
{
Bitmap bmp = new Bitmap(400, 200); // pictureBox
pictureBox1.Image = bmp; // pictureBox
Graphics g = Graphics.FromImage(bmp); //
bmp = new Bitmap("E:\\.PNG"); //
Rectangle r = new Rectangle();
double p;
int w, h;
w = bmp.Width; //
h = bmp.Height; //
r.X = 0;
r.Y = 0;
p = h;
r.Width = 400;
r.Height = (int)Math.Floor(p / w * r.Width); //
g.DrawImage(bmp, r);
pen = new Pen(cl); //
brush1 = new SolidBrush(cl2);
brush = new SolidBrush(cl3);
g.DrawLine(pen, 50, 40, 29, 10);
g.DrawLine(pen, 10, 40, 29, 10);
g.DrawLine(pen, 10, 40, 50, 40);
g.DrawLine(pen, 20, 40, 20, 140); //
g.DrawLine(pen, 40, 40, 40, 140); //
g.DrawLine(pen, 10, 140, 50, 140); //
g.DrawLine(pen, 10, 150, 50, 150); //
g.DrawLine(pen, 10, 140, 10, 150); //
g.DrawLine(pen, 50, 140, 50, 150); //
g.DrawEllipse(pen, 25, 120, 10, 10);
g.DrawEllipse(pen, 25, 100, 10, 10);
g.DrawEllipse(pen, 25, 80, 10, 10);
g.DrawEllipse(pen, 25, 60, 10, 10);
g.DrawEllipse(pen, 25, 40, 10, 10);
if (Rk > 60)
timer1.Enabled = false; //
else
{
if (Rs == 0)
{
g.FillEllipse(brush, 25, 120, 10, 10);
Rs = 20;
}
else
{
if (k-Rs>= 40)
{
g.FillEllipse(brush, 25, k - Rs, 10, 10);
Rs += 20;
pictureBox1.Refresh();
}
}
}
}
private void pictureBox1_Click(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
string s;
s = textBox1.Text;
Rk = Convert.ToInt32(s);
Rs = 0;
k = 120;
timer1.Start(); //
}
}
}