Ignite

RSS Feeds Главная Программы на заказ Портфолио Контакты Геокодирование – еще один способ получения координат

Автор: Alex Рубрика: web

Нет ответов

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

C# http : //maps.google.com/maps/api/geocode/[type]?address=[address]&sensor=false

В результате запроса:

C# http : //maps.google.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&sensor=false

C# "results" : [ { "lng" : -122.08506470 }, } 1 4 5 7 9 11 12 14 {    "results" : [        {          "address_components" : [ . . . ] ,          "formatted_address" : "1600 Амфитеатр-Паркуэй, Маунтин-Вью, Калифорния 94043, Соединённые Штаты Америки" ,          "geometry" : {              "location" : {                "lat" : 37.42285760 ,                "lng" : - 122.08506470              } ,                       } ,                 }    ] , }

Получение координат для карт

Автор: Alex web Нет ответов
Вчера я рассказывал об использовании замечательной библиотеки leaflet карты бесплатных Wi-Fi источников

http://wikimapia.org/

Кликаем по ним и видим всплывающее окошко:

JavaScript 1 L . marker ( [ 37.6200783 , - 89.5172882 ] ) . addTo ( map ) ;

,
leaflet – создание карт для web

Alex Рубрика: web Нет ответов

интерактивная карта бесплатных точек Wi-Fi в городе Донецке .

XHTML <!--[if lte IE 8]> <![endif]--> 2 4 5 <link rel = "stylesheet" href = "http://cdn.leafletjs.com/leaflet-0.5/leaflet.css" /> <!--[if lte IE 8]>      <link rel="stylesheet" href="http://alexbard.org.ua/cdn.leafletjs.com/leaflet-0.5/leaflet.ie.css" /> <![endif]--> <script src = "http://cdn.leafletjs.com/leaflet-0.5/leaflet.js" > </script>

XHTML <div style = "height=150px;" id = "map" > </div>

Создаем карту с координатами карты x, y и приближением z:

JavaScript 1 var map = L . map ( 'map' ) . setView ( [ x , y ] , z ) ;

JavaScript 2 L . tileLayer ( 'http://{s}.tile.osm.org/{z}/{x}/{y}.png' , {      attribution: '&copy; <a href="http://alexbard.org.ua/osm.org/copyright">OpenStreetMap</a> contributors' } ) . addTo ( map ) ;

JavaScript .openPopup(); 1 L . marker ( [ x , y ] ) . addTo ( map )      . bindPopup ( 'A pretty CSS3 popup. <br> Easily customizable.' )      . openPopup ( ) ;

, ,
Встраивать html5 видео все еще слишком сложно

Автор: Alex web Нет ответов

Как встроить видео на сайт? Короткий ответ – воспользуйтесь Youtube или Vimeo. Там работают чрезвычайно умные люди, которые уже решили совершенно все проблемы, которые могут возникнуть при встраивании видео на сайт.

Как это сделать без помощи сторонних сервисов? Существует 4 основных группы людей, которые будут смотреть видео у вас на сайте:
  • В оставшейся части этого поста я уделю внимание тому, как можно осуществить поддержку всех этих устройств и браузеров у себя на сайте.

    Самый простой случай. Видео-проигрыватель в одну строчку: XHTML <video src = "video.mp4" = = >

    Для поддержки устаревших браузеров (в первую очередь под этой фразой следует понимать IE7+) будем использовать javasript-библиотеку html5media.js, которая будет создавать flash видеоплеер для случая устаревшего браузера:

    XHTML <script src="http://api.html5media.info/1.1.5/html5media.min.js"></script> <body> </body> 5      <head>          <script src = "http://api.html5media.info/1.1.5/html5media.min.js" > </script>      </head>      <body>          <video src = "video.mp4" = 640 = > </video>      </body>

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

    У меня все еще, что-то не работает

    Проверяйте корректность декодирования видео в разные форматы или настройки своего сервера. , Nancy Framework

    Автор: Alex web

    Нет ответов

    http://nancyfx.org/

    Пишем первый сайт

    C# { Get["/"] = _ => "Hello World!"; } } 1 2 4 5 public class SampleModule : Nancy . NancyModule {      public SampleModule ( )      {          Get [ "/" ] = _ = > "Hello World!" ;      } }

    Готово!

    Aurora.js – аудио фреймворк для web

    Alex Рубрика: Новости

    Нет ответов

    Демо

    Исходники , Планы и всякое Alex ignite

    Я давно не писал в блог “просто так”, о жизни. Этот пост будет посвящен этому. Я расскажу о том, чем я живу в последнее время, о прогрессе в разработке Ignite и о своих планах на будущее.

    С 2009-го года я был в свободном плавании – будучи некрасиво уволенным по сокращению с предыдущего места работы, я не нашел ничего лучшего, чем открыть субъект предпринимательской деятельности и продолжить работать самостоятельно, на себя. Дела шли неплохо, но этот пост не про это, как и не про то, как в нашем государстве(Украина) способствуют развитию мелкого бизнеса. Скажу только, что к 2013-му году работать стало окончательно невозможно, и я начал искать работу программиста на стороне. Этим я занимался полтора месяца (с конца января). После  ведения своего бизнеса, было интересно окунуться в работу других предприятий, в то как они предлагая копейки, пытаются найти нормального специалиста, в то что узнав про какой-нибудь пробел в знаниях его раздували до размеров слона и т.д. В итоге, работу я конечно же нашел, и сейчас все еще продолжаю получать письма с предложениями на все те же вакансии, куда не прошел. Забавно.. но этот пост не про это.

    C# Отложенное получение данных

    Автор: Alex Рубрика: программирование

    C# 1 var a = someAction ( ) ;

    C# } 1 2 4 5 6 7 9 10 public static void someAction ( ) {    var worker = new BackgroundWorker ( ) ;    //действие    worker . DoWork + = ( sender , args ) = > { } ;    //результат    worker . RunWorkerCompleted + = ( sender , args ) = > { } ;    //запускаем асинхронный процесс    worker . RunWorkerAsync ( ) ; } К сожалению, если мы передадим переменную, которая должна измениться в результате выполнения асинхронного запроса с модификаторами out или ref следующим образом: C# }; } 2 4 6 7 8 11 12 public static void someAction ( ref int i ) {    var worker = new BackgroundWorker ( ) ;    //действие    worker . DoWork + = ( sender , args ) = > { } ;    //результат записываем    worker . RunWorkerCompleted + = ( sender , args ) = > {        i = 1 ;    } ;    //запускаем асинхронный процесс    worker . RunWorkerAsync ( ) ; }

    Обойдем это с использованием собственного класса:

    C# { } 3 6 7 8 10 11 12 14 class Interfaced < T >      {          private T _value ;          public T Value {              get { return _value ; }              set              {                  if ( value . Equals ( _value ) ) return ;                  _value = value ;                  ValueChanged . Invoke ( this , null ) ;              }          }          public EventHandler ValueChanged ;      }

    Пример использования класса:

    C# string[] strings; { } } } 2 4 6 7 12 15 17 18 20 23 class Main {      string [ ] strings ;      public Main ( )      {          var iValue = new Interfaced < string [ ] > ( ) ;          iValue . ValueChanged + = ( sender , args ) = >              strings = ( ( Interfaced < String [ ] > ) sender ) . Value ;          Helper . AsyncAction ( iValue ) ;      } }   class Helper {      public static void AsyncAction ( Interfaced < string [ ] > iValue )      {          var worker = new BackgroundWorker ( ) ;          worker . DoWork + = + = ( sender , args ) = > { } ;          worker . RunWorkerCompleted + = ( sender , args )              = > { iValue . Value = new string [ 5 ] ; } ;          worker . RunWorkerAsync ( ) ;      } } В данном случае, strings перестанет равняться null в момент завершения асинхронной операции.

    Alex Рубрика: ignite

    Управление свободной камерой Alex ignite

    1 2 3 4 Last page (45)





    SITE-MAP