/// <summary> /// Создать вершину графа, которая находится на определённом участке предприятия. /// </summary> /// <param name="region">Ссылка на участкок предприятия, на котором находтся данная вершина.</param> /// <param name="regionX">Координата вершины внутри участка по оси Х в матрице и в графе.</param> /// <param name="regionY">Координата вершины внутри участка по оси Y в матрице и в графе.</param> /// <param name="mczs">Ссылки на места учёта и управления, которые находятся на данной вершине.</param> public TopologyVertex(FacilityRegion region, uint regionX, uint regionY, MeasurementAndControlZone[] mczs = null) { Region = region ?? throw new ArgumentNullException(nameof(region)); RegionX = regionX; RegionY = regionY; MCZs = mczs; LaboriousnessWeight = GetLaboriousnessWeight(); }
/// <summary> /// Можно ли передавать данные на сервер через локальную сеть или Интернет. /// </summary> /// <param name="project">Свойства проекта.</param> /// <param name="vertex">Вершина графа, в которой установлен инструмент.</param> /// <returns>Результат проверки.</returns> protected bool CanSendViaLocalNetwork(Project project, FacilityRegion region) { try { return((project.UseLocalServer || project.IsInternetAvailable) && (region.HasLan && ServerConnections.Contains(InternetConnection.Ethernet) || region.HasWiFi && ServerConnections.Contains(InternetConnection.WiFi))); } catch (Exception ex) { Console.WriteLine("CanSendViaLocalNetworks failed! {0}", ex.Message); return(false); } }