Знакомство с Blender 3D

Blender — это бесплатный и Open Source программный комплекс для 3D моделирования и анимации. Простыми словами, для самых зеленых, Blender 3D — это компьютерная программа для воспроизводства высококачественных изображений 3D — моделирования и анимации, используя трехмерную геометрию и математические вычисления. Вы наверняка видели результаты работы этой программы в с фильмах или в бюджетных телевизионных шоу.

Сгенерированная на компьютере 3D графика используется везде. Почти каждый крупный фильм и телевизионное шоу вовлекает в свою работу 3D графику и анимацию. К примеру, каждое спортивное событие акцентирует внимание на анимации, чтобы вывести счет и имена игроков. Но это не только фильмы и ТВ, 3D графика играет главную роль при создании видеоигр, промышленного дизайна, научной визуализации и в архитектуре. В правильных руках можно создать все перечисленное выше и для развития правильных рук будет необходимо набраться чуточку терпения и усидчивости.

Основным преимуществом Blender 3D по сравнению с остальными 3D программами — это то, что он бесплатен для использования и обходится потребителю без оплаты и он же является Open Source  это значит, что даже вы можете участвовать на равне с остальным сообществом в его развитии.

Будучи свободным

Being free of cost, as well as free (as in freedom) and open source, means
that not only can you go to the Blender website (www.blender.org) and
download the entire program right now without paying anything, but you can
also freely download the source, or the code that makes up the program. For
most programs, the source code is a heavily guarded and highly protected
secret that only certain people (mostly programmers hired by the company
that distributes the program) can see and modify. But Blender is open
source, so anybody can see the program’s source code and make changes to
it. The benefit is that rather than having the program’s guts behind lock and
key, Blender can be improved by programmers all over the world!
Because of these strengths, Blender is an ideal program for small animation
companies, freelance 3D artists, independent filmmakers, students beginning
to learn about 3D computer graphics, and dedicated computer graphics
hobbyists.
Blender, like many other 3D computer graphics applications, has had a
reputation for being difficult for new users to understand. At the same time,
however, Blender is also known for allowing experienced users to bring
their ideas to life quickly. Fortunately, with the help of this book and the
regular improvements introduced in each new release of Blender, that gap is
becoming
much easier to bridge.

 

Установка темы Zurb Foundation на свой WordPress — сайт

Что, если вы решили изменить библиотеке Bootstrap и решили попробовать на вкус альтернативный вариант в виде Zurb Foundation? Эта статья покажет, как его установить и скомпилить.

Начальные условия

У нас есть установленный голый движок WordPress, который работает у нас либо на локальном или удаленном сервере.

Перед работой с темой

Для компиляции исходников темы нам будет необходим Node.js с инструментами разработки. Устанавливаем его по инструкции, в зависимости у кого какая система. К примеру, если у нас уделанный сервер на Ubuntu, то нам подходит инструкци я в этом разделе:

curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
sudo apt-get install -y nodejs
sudo apt-get install -y build-essential
  1. Первым делом скачиваем исходники темы-скелетона по адресу или на GitHub.
  2. Устанавливаем эту тему в нашу систему WordPress, но если сейчас открыть сайт, то ничего не заработает, потому что тема еще не скомпилирована.
  3. Входим в корневую папку темы через командную строку системы и выполняем процесс компиляции и настройки:

Устанавливаем все зависимости

npm install

Конфигурируем и для этого необходимо файл config-default.yml скопировать под именем config.yml и произвести ряд настроек (актуально, если у вас локальный сервер).

Запускаем процесс построения

npm run build

Создание конечного архива с темой

После того, как мы поработали с исходниками и конфигурацией, то на конец можно уже выпустить конечный релиз собранной и конечной темы и для этого достаточно набрать команду:

npm run package

Данная команда соберет все скомпилированные исходники без лишних вспомогательных файлов в один zip — архив темы в папке packaged.

Примечания

Если выходи ошибка npm ERR! Failed at the node-sass@4.7.2 postinstall script. , надо установить зависимости для sass

sudo npm i gulp-sass -ES --unsafe-perm=true

 

Раскрытие выпадающего меню при наведении в Bootstrap 3/4

По-умолчанию выпадающиее меню в Bootstrap раскрывается при клике и сворачивается тоже только при клике мышкой.

Было бы не плохо, чтоб раскрытие и сворачивание меню происходило при наведении мышки. И это сделать совершенно не сложно! Для этого нужно лишь добавить CSS правило:

.dropdown:hover > .dropdown-menu { 
    display: block; 
}

И выпадающее меню реагирует на наведение.

Отключение обновлений в WordPress

Иногда бывает полезно отключить обновления определенных модулей в WordPress. Это могут быть темы, плагины, виджеты и т.п. и часто такая необходимость возникает, когда вы сдаете проект клиенту на WordPress и где вы не всегда на месте, чтобы разъяснять или справлять все ньюансы, которые могут возникнуть в связи новыми обновлениями модулей.

Запретить обновление темы

Рассмотрим отключение обновлений тем. Тут привести 3 способа, как это сделать.

Способ 1.

Суть первого способа заключается в изменении файла стилей. Да да, именно файла стилей — style.css. В начале этого файла, пишутся некоторые параметры, например — название темы, автор и нужная нам версия.

Выглядит такая строка примерно так — Version: 1.0, смотрите внимательно. она где-то в начале. Так вот, чтобы отключить обновления, Вам просто нужно изменить версию на другую, которая будет побольше, например так — Version: 999.0.

Теперь получается, что любая версия будет меньше указанной, а значит не актуальной и тема не будет обновляться.

 

Способ 2. 

Второй способ потребует от Вас тоже небольшого вмешательства в код темы, а именно в файл пользовательских функций — functions.php. Открываем его для редактирования, а потом в самый конец перед закрывающим тегом PHP — ?>, если такого нет, то просто в конец, добавляем такие вот функции.

// отключаем обновление тем
remove_action( 'load-update-core.php', 'wp_update_themes' );
add_filter( 'pre_site_transient_update_themes', '__return_null' );
 
// отключаем авто обновления
add_filter( 'auto_update_theme', '__return_false' ); 
 
// спрячем имеющиеся уведомления
add_action('admin_menu','hide_admin_notices');
function hide_admin_notices() {
    remove_action( 'admin_notices', 'update_nag', 3 );
}

По комментариям видно что мы отключаем сразу несколько параметров — обновление тем, авто обновления и уведомления о надобности обновится.

Способ 3.

Последний способ, наверное самый простой, но требует установки плагина. Скачивает с сайта WordPress плагин — Easy Updates Manager или WordPress Theme Updates, ну и подобные им, которые сделают все за Вас.

Как по мне, то лучше выбрать один из ручных методов, ведь использование плагинов лишний раз нагружает Ваш WordPress, хоть и не сильно, но все же.

Запретить обновление плагина

В некоторых случаях может оказаться, что обновлять плагин вам не нужно. Это может произойти, если вы самостоятельно внесли доработки и изменения в код плагина. Тогда обновление перезапишет все ваши правки. Либо же если авторы плагина в чем-то изменили концепцию, и новая версия вас больше не устраивает. В моем случае так случилось с замечательным плагином NextGen Gallery, который после обновления до версии 2 стал неповоротливым и тяжело модифицируемым.

Способ 1.

Версия плагина прописывается в начале его главного файла. Открываем список плагинов, выбираем нужный и нажимаем «Изменить».

<?php
/*
Plugin Name: NextGEN Gallery
Plugin URI: http://www.nextgen-gallery.com/
Description: A NextGENeration Photo Gallery for WordPress
Author: Photocrati
Author URI: http://www.photocrati.com/
Version: 1.9.13

Если заменить значение «Version:» на большое число, например 99.99, то проверка обновлений будет сообщать, что установленная  версия новее, и не будет предлагать обновиться.

Способ 2.

Пропишем фильтр, позволяющий блокировать обновления конкретных плагинов централизованно. Для этого нужно в файл wp-config.php добавить массив:

<?php
$DISABLE_UPDATE = array( 'nextgen-gallery', 'nospamnx', 'другие-плагины');

Где значением элемента массива является название директории, в которой расположен плагин,  или его название, если плагин не имеет своей категории (состоит из одного файла).

Затем в файл functions.php текущей темы следует добавить код, который будет обрабатывать данный массив и запрещать для указанных плагинов обновления:

<?php
// запрет обновления выборочных плагинов
function filter_plugin_updates( $update ) {    
    global $DISABLE_UPDATE; // см. wp-config.php
    if( !is_array($DISABLE_UPDATE) || count($DISABLE_UPDATE) == 0 ){  return $update;  }
    foreach( $update->response as $name => $val ){
        foreach( $DISABLE_UPDATE as $plugin ){
            if( stripos($name,$plugin) !== false ){
                unset( $update->response[ $name ] );
            }
        }
    }
    return $update;
}
add_filter( 'site_transient_update_plugins', 'filter_plugin_updates' );

Однако имейте ввиду, с обновлением самого WordPress старые версии плагинов или тем могут оказаться несовместимыми и перестать работать, поэтому отключать обновления следует с осторожностью.

Источники:

  1. Как отключить обновления темы WordPress
  2. Запрещаем обновление конкретного плагина в WordPress

Xamarin.Forms шаг за шагом

Xamarin.Forms предоставляет разработчикам .NET полный набор инструментов кроссплатформенного пользовательского интерфейса. Создавайте собственные приложения для Android, iOS и универсальной платформы Windows с помощью C# в Visual Studio.

Оглавление

Начало работы

Руководства, которые помогут вам начать работу с Xamarin.Forms. Убедитесь в том, что все установлено правильно, и создайте свое первое приложение Xamarin.Forms.

Создавайте пользовательские интерфейсы декларативно и предоставляйте к ним общий доступ на платформах мобильных и классических приложений.

Принципы работы приложения

Все, что вам нужно знать для создания приложений Xamarin.Forms, например работа с файлами, изображениями, базами данных и т. д.

Пользовательский интерфейс

Дополнительные сведения о полном наборе элементов управления пользовательского интерфейса, доступного в Xamarin.Forms XAML.

 Функции платформы

Работа с функциями платформы Xamarin.Forms, такими как пользовательские отрисовщики, и другими важными функциями каждого выпуска.

Xamarin.Essentials

Кроссплатформенные API-интерфейсы для общих задач, таких как доступ к файлам, сведения об устройстве, параметры оборудования и многих других.

Данные и облачные службы

Локальное и удаленное хранение данных, извлечение данных и другие облачные службы.

Развертывание и тестирование

Инструкции по созданию и развертыванию приложений, а также советы по их предварительному тестированию!

Дополнительные понятия и внутренние компоненты

Дополнительные сведения о структуре Xamarin.Forms и помощь по использованию функций, например локализации и специальных возможностей.

Исправление ошибки VT-x is not available (VERR_VMX_NO_VMX)

В процессе очередного запуска  VirtualBox на Windows 10 появилась проблема, связанная с VT-x и выдавалась ошибка, как на фото

Существуют три основных виновника типа ошибки, которые могут стать причиной:

  • VT-x не включен в BIOS
  • CPU не поддерживает VT-x
  • Виртуализация Hyper-V включена в Windows

В моем случае проблема заключалась во включенной виртуализации Hyper-V, следующим шагом является открытие командной строки в качестве администратора и запуск следующей команды:

dism.exe /Online /Disable-Feature:Microsoft-Hyper-V

После этого перезагрузите компьютер и снова попробуйте VirtualBox.

Имитационное моделирование

Связанные статьи

  1. Понятие модели и моделирования
  2. Типы моделей
  3. Имитационное моделирование

Имитационное моделирование получило широкое распространение в различных сферах научной и технической деятельности. К имитационному моделированию целесообразно прибегать следующих случаях [Шеннон Р., 1978]:

  1. Не существует законченной математической постановки данной задачи, либо еще не разработаны аналитические методы решения сформулированной математической модели. К этой категории относятся многие модели массового обслуживания, связанные с рассмотрением очередей;
  2. Аналитические методы имеются, но математические процедуры сложны и трудоемки или их реализация невозможна вследствие недостаточной математической подготовки имеющегося персонала, вследствие чего имитационное моделирование дает более простой способ решения задачи;
  3. Кроме оценки выходных параметров, желательно осуществить на имитационной модели наблюдение за ходом процесса в течение определенного периода;
  4. Имитационное моделирование дает возможность полностью контролировать время изучаемого процесса, поскольку явление может быть замедленно или ускоренно по желанию;
  5. Имитационное моделирование может оказаться единственной возможностью вследствие трудностей постановки экспериментов и наблюдения явлений в реальных условиях (изучение поведения космических кораблей в условиях межпланетных полетов);
  6. Имитационное моделирование полезно применять при подготовке специалистов. Разработка и использование имитационной модели позволяют экспериментатору видеть и «разыгрывать» на модели реальные процессы и ситуации. Это в свою очередь должно в значительной мере помочь ему понять и прочувствовать проблему, что стимулирует процесс поиска нововведений;
  7. Имитационное моделирование можно использовать для изучения новых ситуаций, о которых мало что известно, например, при проверке новых стратегий и правил принятия решений перед проведением экспериментов на реальной системе;
  8. Для некоторых моделей может оказаться важна последовательность событий. Данные об ожидаемых значениях могут оказаться недостаточными.

Имитационная модель реализуется в виде алгоритма, который воспроизводит процесс функционирования системы во времени. В алгоритме сохраняется логическая структура и последовательность элементарных явлений случайной природы, составляющие процесс функционирования системы.

Случайные явления «разыгрываются» с помощью специальных алгоритмов, дающих случайный результат. Например, рассмотрим такое случайное явление как отказ автомобиля. Отказ автомобиля можно «разыграть» с помощью следующего алгоритма. Пусть имеется случайное число Ri, равномерно распределенное на интервале (0, 1]. Такое число получают при помощи датчика случайных чисел, который входит в стандартное программное обеспечение современных компьютеров. Вероятность отказа автомобиля – Pотк. Тогда, если Ri ≤ Pотк, то фиксируется отказ автомобиля. На рис. 1 показана схема «розыгрыша» отказа автомобиля. Только в одном из трех «розыгрышей» зафиксирован отказ. «Разыгрывая» отказ таким образом большее число раз, отказ будет в среднем фиксироваться в каждом десятом случае.

После моделирования явления отказа автомобиля может моделироваться трудоемкость и стоимость устранения отказа, вероятность появления второго отказа и т. д. В моделирующем алгоритме многократно «разыгрываются» различные случайные явления и величины, сохраняя при этом их последовательность и логику.

Однократное выполнение моделирующего алгоритма называется реализацией. Реализация дает случайный, частный результат. Многократное выполнение реализаций дает статистическую оценку характеристик исследуемого процесса. Поэтому иногда имитационное моделирование называют статистическим моделированием.

Рассмотрим пример с моделированием отказа автомобиля. В случае фиксации отказа определяется время и стоимость устранения отказа. Таким образом алгоритм моделирования будет состоять из трех блоков: моделирование события отказа автомобиля, моделирование времени устранения отказа и моделирование стоимости устранения отказа. В нашем примере полный цикл «моделирование события отказа – моделирование времени устранения отказа – моделирование стоимости устранения отказа» будет реализацией. Если выполнить большое число реализаций, то можно получить оценку среднего времени и стоимости устранения отказа, а также другие статистические характеристики этих величин (дисперсию, вариацию, размах).

Широкому применению имитационных моделей способствует два фактора. Во-первых, необходимость решения все более сложных задач. Организационные и технические системы постоянно усложняются. В связи с этим увеличиваются трудности при проектировании и управлении ими. Во-вторых, развитие имитационного моделирования основывается на широком распространении и доступности быстродействующих компьютеров. Имитационная модель — это, прежде всего, алгоритм. Увеличение быстродействия компьютеров позволяет использовать более сложные алгоритмы, иначе говоря, строить более сложные модели.

Имитационным моделям присущ ряд существенных недостатков [Максимей И.В., 1985; Шеннон Р., 1978]:

  1. Разработка хорошей имитационной модели обходится дорого и требует больших затрат времени;
  2. Имитационная модель в принципе неточна и невозможно измерить степень этой неточности;
  3. Возможности прогнозирования имитационного моделирования меньше, чем аналитического моделирования.

Тем не менее имитационное моделирование широко используется благодаря своей простоте и интуитивной привлекательности. Оно является одним из самых распространенных методов при решении задач управления и исследования операций специалистами-практиками [Шеннон Р., 1978].

 

 

Типы моделей

Связанные статьи

  1. Понятие модели и моделирования
  2. Типы моделей
  3. Имитационное моделирование

На практике используются модели, которые условно можно разделить на следующие типы:

  • физические;
  • аналоговые;
  • математические.

Физические модели имеют одну и ту же физическую природу с оригиналом и сохраняют с ним внешнее сходство. Размеры моделей могут быть пропорционально уменьшены или увеличены по сравнению с оригиналом. Например, для различных исследований строятся уменьшенные модели самолета, корабля, автомобиля, моста, гидротехнического сооружения, здания и т. п.

Примером физической модели может служить модель опытного завода (в уменьшенном масштабе), предназначенная для изучения нового химического процесса, или модель автомобиля в уменьшенном масштабе, на которой исследуются аэродинамические свойства реального автомобиля.

Достоинство физических моделей состоит, во-первых, в способности замещать сложные, дорогостоящие системы, эксперименты на которых проводить либо невозможно, либо экономически невыгодно; во-вторых, в наглядности получаемых при этом представлений о структуре и функциях реальных систем; в-третьих, в достоверности получаемых результатов.

Аналоговые модели отражают физические процессы, протекающие в оригинале, с помощью некоторых других аналогичных процессов, которые описываются едиными математическими соотношениями с оригиналом (например, одинаковыми дифференциальными уравнениями), однако имеют иную физическую природу.

В качестве аналоговых моделей используются электрические модели, которые применяются для изучения механических, гидродинамических, акустических и других явлений. График также является аналоговой моделью. Расстояние на графике отображает такие характеристики объекта, как время, срок службы, количество единиц и т. д. С помощью графика можно определить характер изменения одних величин при изменении других величин. Для некоторых относительно простых случаев график действительно может служить средством решения поставленной задачи. Графические решения возможны для определенных задач линейного программирования, а также для игровых задач.
Иногда графики используются совместно с математическими моделями, причем одна из этих моделей дает исходную информацию для другой.

Другой часто используемой аналоговой моделью являются различные схемы. Например, на схеме технологического процесса разнообразные события, такие как рабочие места, операции, проверки, образующиеся запасы, процессы транспортирования изделий и т. д., представлены символами и линиями.

Математическая модель представляет собой систему математических и
(или) логических уравнений, с помощью которых описывается структура и
функции реальной системы.

Математические модели наиболее абстрактные (общие) модели, поэтому они находят широкое применение при исследовании систем. Зачастую одни и те же математические модели могут использоваться для исследования различных систем. Математическая модель всегда является идеализацией реальной системы, поэтому, чтобы модель позволяла решить задачу, вводят некоторые упрощающие предположения.

Математические модели классифицируют на следующие группы [Шеннон Р., 1978]:

  • статические и динамические модели;
  • детерминистические и стохастические модели;
  • дискретные и непрерывные модели;
  • аналитические и имитационные.

Статические модели служат для исследования свойств системы в некоторый фиксированный момент времени при постоянном воздействии (нагрузке), а динамические модели — на протяжении некоторого отрезка времени при изменяющихся воздействующих факторах. Например, модель, позволяющая определить напряжения, возникающие в балке при приложении некоторой постоянной нагрузки, следует отнести к статическим моделям, а если модель учитывает переменные нагрузки, то это уже динамическая модель.

Если в описании математической модели используются случайные величины, то такие модели называют стохастическими или вероятностными, в противном случае — детерминированными (определенными).

Рассмотрим модель, на вход которой подаются известные параметры X, а на выходе модели
получаем искомые величины Y. В детерминированной модели выходная величина Y однозначно определяется через входную величину X. Подавая на вход модели одни и те же параметры Х1 = Х2 = Х3, на выходе мы будем получать одни и те же искомые величины Y1 = Y2 = Y3. В стохастической модели в таком случае на выходе получим величины Y1 ≠ Y2 ≠ Y3, которые можно оценить только в вероятностном смысле.

Если в описании математической модели используются дискретные величины (например, число постов на СТОА, количество деталей, хранящихся на складе), то такие модели называют дискретными, в противном случае (например, непрерывными величинами являются наработка на отказ элемента, трудоемкость замены детали, расход топлива автомобилем) — непрерывными.

Математические модели по способу дальнейшего использования делятся на аналитические и имитационные. В аналитических моделях процессы функционирования реального объекта записываются в виде уравнений и (или) логических условий. В имитационных моделях процесс функционирования реального объекта разделяется на элементарные явления, которые воспроизводятся с помощью моделирующего алгоритма с сохранением их логической структуры и последовательностью протекания во времени.

Сущность моделирования на аналитических моделях состоит в следующем. Математическая модель преобразуется в такой вид, который допускает получение искомых величин аналитическими методами. Получение результатов такими методами обычно является полным решением задачи, что делает аналитические модели достаточно привлекательными. Зачастую, при исследовании сложных систем, получить аналитическую модель чрезвычайно сложно или попросту невозможно. Поэтому иногда сознательно идут на огрубление первоначальной модели для того, чтобы получить хотя бы приближенное значение.

При моделировании сложной системы обычно используется совокупность нескольких моделей. Любая система может быть представлена различными способами, которые значительно отличаются друг от друга по сложности и детализации. По мере того, как проблема глубже проанализирована и понята, простые модели заменяются все более сложными.