визуализация данных

Модератор: Alex

alexsis_76
Сообщения: 791
Зарегистрирован: Пт янв 22, 2016 10:08 am
Благодарил (а): 6 раз
Поблагодарили: 63 раза

Re: визуализация данных

Сообщение alexsis_76 » Сб янв 07, 2017 3:14 am

это то же самое что выше,
start() вызывается по событию onload,затем циклично setTimeout('getFull5Data()', 1000);
а что с этим кодом не идет?
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв
Благодарил (а): 303 раза
Поблагодарили: 282 раза

Re: визуализация данных

Сообщение serghei » Вс янв 15, 2017 10:41 pm

Так и не могу привязать число из XML страницы к счетчику. Все,что не использует эту возможность, влетает без проблем.
AMS_watch.png
AMS_watch.png (155.64 КБ) 5526 просмотров
В коде html используется <body onload="init()" style="background-color:#84a5ed"> для задания заднего фона. А как прицепить наш CSS ? Такая конструкция работать не хочет
СпойлерПоказать

Код: Выделить всё

<!DOCTYPE html>
<html manifest="demo.manifest"><head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <meta charset="utf-8">
    
    %& <!-- links -->
    <title>Canvas Steel</title>
</head>

<body onload="init()" style="background-color:#84a5ed">

<style>
  .concept2 {
    color: #333;
    background: #BCC7B7 url(//%!/concept2.jpg) no-repeat;
    background-size: 100% 100%;
  }
</style>

    <table>
        <tbody><tr>
 
То же самое относится и к часам.
Вложения
hclock.rar
Часы.
(1.88 КБ) 160 скачиваний
watch.rar
Секундомер. Распаковать и закинуть на CD карту
(48.37 КБ) 157 скачиваний
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
eGorka
Сообщения: 182
Зарегистрирован: Чт ноя 24, 2016 10:47 am
Благодарил (а): 5 раз
Поблагодарили: 25 раз

Re: визуализация данных

Сообщение eGorka » Пн янв 16, 2017 10:11 pm

serghei писал(а):В коде html используется <body onload="init()" style="background-color:#84a5ed"> для задания заднего фона. А как прицепить наш CSS ? Такая конструкция работать не хочет

Код: Выделить всё

<body onload="init()" style="background-color:#84a5ed">
<style>
  .concept2 {
    color: #333;
    background: #BCC7B7 url(//%!/concept2.jpg) no-repeat;
    background-size: 100% 100%;
  }
А если так?

Код: Выделить всё

<body onload="init()" class="concept2"> 
За это сообщение автора eGorka поблагодарил:
serghei (Пн янв 16, 2017 10:44 pm)
Рейтинг: 1.16%
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв
Благодарил (а): 303 раза
Поблагодарили: 282 раза

Re: визуализация данных

Сообщение serghei » Пн янв 16, 2017 10:29 pm

Насколько я " въехал " в CSS конструкция .concept2 задает положение на экране. Если надо отобразить два или больше чисел , прописываем остальные аналогично. Потом она цепляет картинку.
Спасибо за совет, завтра попробую. Останется главный вопрос - как воткнуть показания счетчика. Если один раз я пойму - откроется целый пласт подобных информеров , а их великое множество.
С full5 и full18 проблем не было,потому что они сделаны по образу full2.
UPD. СПАСИБО!!!!! Сработало!!! Только еще надо было прицепить и наш CSS ))))

Для часов не проскочило(((
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
alexsis_76
Сообщения: 791
Зарегистрирован: Пт янв 22, 2016 10:08 am
Благодарил (а): 6 раз
Поблагодарили: 63 раза

Re: визуализация данных

Сообщение alexsis_76 » Вт янв 17, 2017 12:00 am

css каскадная таблица стилей
.concept2 {
color: #333;
background: #BCC7B7 url(//%!/concept2.jpg) no-repeat;
background-size: 100% 100%;
.concept2-селектор класса
класс class="concept2
эта конструкция может быть помещена в файл css,а сам файл включен в html вот так <link href="xxx.css" rel="stylesheet" type="text/css" /> где xxx.css
искомая таблица
Встретив в HTML-документе этот тег, браузер загрузит с сайта CSS-файл (в нашем случае это xxx.css) и применит к документу содержащиеся в нём стили. Файл не должен содержать ничего, кроме CSS-инструкций.
Внешний файл со стилями удобен тем, что одни и те же стили можно применять ко множеству документов на сайте — в каждом из них достаточно лишь вписать одну строку с элементом
сама таблица может выглядеть так
#top {
background-color: #ccc;
padding: 1em
}
.intro {
color: red;
font-weight: bold;
}
#top-индентификация элемента по id
.intro-индентификация элемента по class
За это сообщение автора alexsis_76 поблагодарил:
serghei (Вт янв 17, 2017 12:16 am)
Рейтинг: 1.16%
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв
Благодарил (а): 303 раза
Поблагодарили: 282 раза

Re: визуализация данных

Сообщение serghei » Вт янв 17, 2017 12:16 am

И опять спасибо за разъяснения. По поводу одометра я написал создателю, но не смог объяснить всю внутреннюю кухню АМС, за что был ну очень культурно обруган))). В общем ссылку на XML документ я прицепил, а вот дальше в API просто указано
СпойлерПоказать
Функция setVal()
Данная функция вызывается для установки отображаемого значения.

Вызов: counter.setVal(val);

counter - переменная, которой был присвоен объект, созданный при вызове конструктора.

val - новое отображаемое значение в виде строки. Отображаемые символы: цифры с 0 по 9. Если данный параметр не является строкой, то предепринимается попытка преобразования его к строке. Если длина строки меньше заданной разрядности, то она дополняется нулями в начале. Если длина строки больше заданной разрядности, то она усекается с конца.
Вот что с этим делать дальше - уже голова сломалась......А там еще древний вольтметр есть.....
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
alexsis_76
Сообщения: 791
Зарегистрирован: Пт янв 22, 2016 10:08 am
Благодарил (а): 6 раз
Поблагодарили: 63 раза

Re: визуализация данных

Сообщение alexsis_76 » Вт янв 17, 2017 1:44 am

из XML-а значение вытащил,если вытащил пишешь его вместо val и вуаля
counter.setVal(val);
counter-созданный объект(твой прибор)
у объекта есть свойства и методы (объект автомобиль,у него есть колеса,руль,он может ехать с некоторой скоростью и т д).
setVal-установить значение.
val-само значение.
за что был ну очень культурно обруган)))
ох уж эти скриптописатели :)
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв
Благодарил (а): 303 раза
Поблагодарили: 282 раза

Re: визуализация данных

Сообщение serghei » Пт янв 27, 2017 2:48 am

Воплощая идею "АМС - образовательная платформа" попробовал воткнуть и отобразить .pdf файлы. Нашел как это сделать, тегом <iframe src="11.pdf" width="400" height="200"></iframe> прицепил pdf файл. Локально на компе все работает - и прокрутка и остальные функции. А вот из-под АМС не хочет ((. И проблема скорее всего та же ,что и с отображением Favicon.ico - браузер орет что файла нет, хотя на вкладке " Edit" иконка есть.
Только сейчас сообразил...В Ажаксе есть упоминание

Код: Выделить всё

void sendHtmlAnswer(WiFiClient cl) {cl.println(makeAnswer("text/html"));}
void sendCssAnswer (WiFiClient cl) {cl.println(makeAnswer("text/css"));}
void sendJsAnswer  (WiFiClient cl) {cl.println(makeAnswer("application/javascript"));}
void sendImgAnswer (WiFiClient cl) {cl.println(makeAnswer("image/png"));}
void sendXmlAnswer (WiFiClient cl) {cl.println(makeAnswer("text/xml"));}

 
Хотя .gif тоже грузилась и работала. Это ограничения АМС или вообще технологии Ажакс ?
Изучаем дальше
СпойлерПоказать
AMS_pdf.jpg
AMS_pdf.jpg (190.65 КБ) 5339 просмотров
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
alexsis_76
Сообщения: 791
Зарегистрирован: Пт янв 22, 2016 10:08 am
Благодарил (а): 6 раз
Поблагодарили: 63 раза

Re: визуализация данных

Сообщение alexsis_76 » Пт янв 27, 2017 7:47 am

void sendHtmlAnswer(WiFiClient cl) {cl.println(makeAnswer("text/html"));}
void sendCssAnswer (WiFiClient cl) {cl.println(makeAnswer("text/css"));}
void sendJsAnswer (WiFiClient cl) {cl.println(makeAnswer("application/javascript"));}
void sendImgAnswer (WiFiClient cl) {cl.println(makeAnswer("image/png"));}
void sendXmlAnswer (WiFiClient cl) {cl.println(makeAnswer("text/xml"));}
это называется MIME типы,говорит браузеру как нужно интерпретировать содержимое.
Воплощая идею "АМС - образовательная платформа" попробовал воткнуть и о.тобразить .pdf файлы
мне кажется это плохая идея,нужно взять что нибудь побыстрее.
Alex
Сообщения: 2357
Зарегистрирован: Пт апр 20, 2012 12:53 pm
Благодарил (а): 42 раза
Поблагодарили: 262 раза

Re: визуализация данных

Сообщение Alex » Пт янв 27, 2017 8:46 am

попробовал воткнуть и отобразить .pdf файлы
Не очень понял что вы делали, но обратите внимание на

Код: Выделить всё

void sendPdfAnswer (EthernetClient cl) {cl.println(makeAnswer(F("application/x-pdf"))); 
и на то, что АМС вообще не знает, что такое расширение pdf

Код: Выделить всё

    else if (StrContains(HTTP_req, ".css"))  {if (openWebFile()) {sendCssAnswer(cl);}  else {sendErrorAnswer("", cl);}}
    else if (StrContains(HTTP_req, ".js"))   {if (openWebFile()) {sendJsAnswer(cl);}   else {sendErrorAnswer("", cl);}}
    else if (StrContains(HTTP_req, ".pde"))  {if (openWebFile()) {sendJsAnswer(cl);}   else {sendErrorAnswer("", cl);}}
    else if (StrContains(HTTP_req, ".png"))  {if (openWebFile()) {sendPngAnswer(cl);}  else {sendErrorAnswer("", cl);}}
    else if (StrContains(HTTP_req, ".jpg"))  {if (openWebFile()) {sendJpgAnswer(cl);}  else {sendErrorAnswer("", cl);}}
    else if (StrContains(HTTP_req, ".gif"))  {if (openWebFile()) {sendGifAnswer(cl);}  else {sendErrorAnswer("", cl);}}
    else if (StrContains(HTTP_req, ".ico"))  {if (openWebFile()) {sendIcoAnswer(cl);}  else {sendErrorAnswer("", cl);}} 
но это легко исправить добавив соответствующую строчку.
Ответить