Advertisement
kon9wa88

dom1

Apr 23rd, 2018
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Public Class Form1
  2.  
  3.     Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
  4.         Dim x, y, h, k As Single, i As Integer = 0
  5.         x = Val(InputBox("X"))
  6.         y = Val(InputBox("Y"))
  7.         h = Val(InputBox("H"))
  8.         k = Val(InputBox("K"))
  9.         For i = 1 To 3
  10.             Module1.dom(x, y, h, k * i)
  11.             x = x + i * 200
  12.         Next
  13.     End Sub
  14. End Class
  15. -----------------------------------------------------
  16. Imports System.Drawing
  17. Module Module1
  18.     Dim g As Graphics
  19.     Dim p1 As New Pen(Color.Black, 4)
  20.     Dim k1 As New SolidBrush(Color.SaddleBrown)
  21.     Dim k2 As New SolidBrush(Color.RosyBrown)
  22.     Dim k3 As New SolidBrush(Color.White)
  23.     Dim k4 As New SolidBrush(Color.Brown)
  24.     Dim k5 As New SolidBrush(Color.Yellow)
  25.  
  26.     Dim krr, dy As Single
  27.  
  28.     Public Sub dom(ByVal x As Single, ByVal y As Single, ByVal h As Single, ByVal k As Single)
  29.         dy = y - ((2 * h / 3) * (k - 1)) ' смещение У при масштабировании
  30.        krr = k * h / 3 ' половина боковой стороны дома
  31.        g = Form1.CreateGraphics
  32.  
  33.         g.DrawRectangle(p1, x, dy, k * h, 2 * krr) 'dom
  34.        g.FillRectangle(k1, x, dy, k * h, 2 * krr) 'dom
  35.        Dim kr() As PointF = {New PointF(x, dy), New PointF(x + krr * 3 / 2, dy - krr), New PointF(x + 3 * krr, dy)} 'krisha
  36.        g.DrawPolygon(p1,kr)
  37.         g.FillPolygon(k2, kr) 'krisha
  38.        g.FillRectangle(k3, x + krr * 3 / 14, dy + krr * 2 / 5, krr * 2 / 3, krr) 'oknol
  39.        g.FillRectangle(k3, x + krr * 37 / 42, dy + krr * 2 / 5, krr * 2 / 3, krr) 'oknor
  40.        g.DrawPie(Pens.Aqua, x + krr * 3 / 14 - krr * 3 / 10, dy + krr * 2 / 5 - (krr / 2), krr * 3 / 5, krr, 0, 90)
  41.         g.DrawPie(Pens.aqua, x + krr * 37 / 42 + krr * 2 / 3 - krr * 3 / 10, dy + krr * 2 / 5 - (krr / 2), krr * 3 / 5, krr, 90, 90)
  42.         g.FillPie(k5, x + krr * 3 / 14 - krr * 3 / 10, dy + krr * 2 / 5 - (krr / 2), krr * 3 / 5, krr, 0, 90) 'zan1
  43.        g.FillPie(k5, x + krr * 37 / 42 + krr * 2 / 3 - krr * 3 / 10, dy + krr * 2 / 5 - (krr / 2), krr * 3 / 5, krr, 90, 90) 'zan2
  44.        g.DrawRectangle(p1, x + krr * 3 / 14, dy + krr * 2 / 5, krr * 2 / 3, krr) 'oknolg
  45.        g.DrawRectangle(p1, x + krr * 37 / 42, dy + krr * 2 / 5, krr * 2 / 3, krr) 'oknorg
  46.        g.DrawRectangle(p1, x + krr * 2, dy + krr, krr / 2, krr)
  47.         g.FillRectangle(k4, x + krr * 2, dy + krr, krr / 2, krr) 'dver
  48.    End Sub
  49. End Module
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement