Categories
Visual C#

Constructor Chaining в C#

namespace OOP {
  class GSM {
    private string model;
    private string manufacturer;
    private decimal ? price;
    private string owner;
    private Battery battery;
    private Display display;

    public GSM(): this("Unknown Model", "Unknown Manifacturer") {}

    public GSM(string model, string manifacturer): this(model, manifacturer, null) {}

    public GSM(string model, string manifacturer, decimal ? price): this(model, manifacturer, price, null) {}

    public GSM(string model, string manifacturer, decimal ? price, string owner): this(model, manifacturer, price, owner, null) {}

    public GSM(string model, string manifacturer, decimal ? price, string owner, Battery battery): this(model, manifacturer, price, owner, battery, null) {}

    public GSM(string model, string manifacturer, decimal ? price, string owner, Battery battery, Display display) {
      this.model = model;
      this.manufacturer = manifacturer;
      this.price = price;
      this.owner = owner;
      this.battery = battery;
      this.display = display;
    }
  }
}
Categories
PHP

Разлика между Include и Require в PHP

Двете функции са идентични с една основна разлика – при възникване на грешка.

Require ще предизвика фатална грешка от тип E_COMPILE_ERROR и ще прекъсне изпълнението на скрипта.

Include ще предизвика грешка от тип E_WARNING, но изпълнението на скрипта ще продължи.

Categories
VB.NET Упътвания

Показване на точки в MapWinGIS

' дефиниране на нов точков shp файл
Dim pointShapeFile As New Shapefile
If pointShapeFile.CreateNewWithShapeID(String.Empty, ShpfileType.SHP_POINT) = True Then
    ' начален индекс на обектите в shp файла
    shapeIndex = 0
    ' за всеки връх (vertex) от списъка с върхове се създава нов точков обект в shp файла
    For Each vertex As Vertex In triangulation.VerticesList
        ' дефиниране на нов точков обект
        point = New Point
        ' координатите на точката съвпадат с координатите на върха
        With point
            .x = vertex.X
            .y = vertex.Y
        End With
        ' дефиниране на нов shp обект
        shape = New Shape
        With shape
            ' дефиниране на нов точков обект
            .Create(ShpfileType.SHP_POINT)
            ' вмъкване на точков обект
            .InsertPoint(point, 0)
        End With
        ' вмъкване на shp обекта в shp файла
        pointShapeFile.EditInsertShape(shape, shapeIndex)
        ' увеличаване на индекса с единица
        shapeIndex += 1
    Next vertex
    ' дефиниране на настройките за изобразяване на точковия shp файл
    With pointShapeFile.DefaultDrawingOptions
        ' тип на условния знак за точка
     .SetDefaultPointSymbol(tkDefaultPointSymbol.dpsCircle)
        ' запълващ цвят на условния знак
        .FillColor = color.ColorByName(tkMapColor.Blue)
        ' размер на точката
        .PointSize = 10
    End With
    ' добавяне и показване на точковия слой върху картата
    With Map
        .AddLayer(pointShapeFile, True)
        .ZoomToMaxExtents()
    End With
Else
    Throw New Exception("Не може да създаде нов shape файл с точки!")
End If