Я строю игру с kinetic.js, и я хочу отобразить некоторые линейные диаграммы с использованием диаграмм Meteor внутри него. Диаграмма должна масштабироваться с помощью холста игры и правильно размещаться. Можно ли встроить диаграмму непосредственно в существующий слой в приложении?Добавление Meteor Chart к существующему приложению Kinetic.JS
ответ
У вас есть несколько вариантов:
1) слой визуализации MeteorCharts на верхней ступени KineticJS как этот
<div id="kineticjs-container"></div>
<div id="meteorcharts-container"></div>
2), если вам не нужна интерактивность, вы можете конвертировать данные MeteorCharts а именно в KineticJS изображение, а затем добавить его в свой KineticJS слой, как это
lineChart.stage.toImage({
callback: function(img) {
kineticLayer.add(new Kinetic.Image({
image: img
});
}
);
3) если вам нужна интерактивность, вы также должны быть в состоянии переместить Мете orCharts слои в вашей сцене KineticJS, что-то вроде этого:
lineChart.stage.getChildren().each(function(layer) {
// remove the layer from the MeteorCharts KineticJS stage
layer.remove();
// add the layer to your own KineticJS stage
kineticStage.add(layer);
});
Я не проверял это, но он должен работать. Всякий раз, когда MeteorCharts обновляет свои слои, он будет фактически обновлять слои на вашей сцене, поскольку объекты изменяются по ссылке в JavaScript.
Я закончил копирование отдельных узлов из каждого слоя Метеор в существующую группу на моей стадии Kinetic.JS.
var group = new Kinetic.Group();
lineChart.stage.getChildren().each(function(layer, index) {
layer.getChildren().each(function(node) {
group.add(node);
});
});
Это приводит к правильной позиционированию диаграммы, однако ни одно из событий для интерактивности не работает. Связаны ли события с Метеорным этапом?
- 1. Добавление Keycloak к существующему приложению OpenShift
- 2. Добавление ОРМ к существующему приложению Padrino
- 3. Добавление websockets к существующему php-приложению
- 4. Добавление GWT к существующему веб-приложению Maven
- 5. добавление интерфейса администратора к существующему приложению пирамиды
- 6. Добавление Piranha CMS к существующему приложению
- 7. Присоединить видеопоток к существующему приложению
- 8. Добавление собственного кода к существующему гибридному приложению Worklight
- 9. Добавление модульного тестирования к существующему приложению веб-форм asp.net
- 10. Добавление MVC3/4/5 к существующему приложению Spring.net WebForms
- 11. Резервная форма немодальной формы к существующему приложению
- 12. Piranha CMS к существующему приложению MVC
- 13. добавить .bar пакет к существующему приложению Blackberry
- 14. Разверните Twilio к существующему приложению Heroku
- 15. Кнопка привязки к существующему приложению (AutoIT)
- 16. Неисправность при добавлении юга к существующему приложению
- 17. Добавление директивы к существующему элементу
- 18. SolrNet - добавление к существующему индексу
- 19. Добавление вибрации к существующему виду
- 20. Добавление nграммы к существующему индексу
- 21. добавление к существующему файлу excel
- 22. Добавление XElement к существующему XDocument
- 23. Добавление NAT к существующему VPC
- 24. Добавление идентификатора к существующему проекту
- 25. Добавление Grails к существующему проекту
- 26. Добавление UINavigationController к существующему UIViewController
- 27. Добавление рамки к существующему проекту
- 28. Добавление потока к существующему проекту
- 29. Добавление UINavigationController к существующему UINavigationController
- 30. Добавление AspectJ к существующему проекту
Спасибо Эрик. Я использую # 3, что мне нужно, но это лишь частичное копирование на сцену. Сетка, заголовок и легенда отображаются правильно, однако построенные линии и фон остаются в том же положении. –