stairs have no direction anymore, our altitude system replaces this
This commit is contained in:
parent
d4c6f1ed9d
commit
822e3ed819
3 changed files with 9 additions and 33 deletions
|
@ -181,15 +181,10 @@ class EditorViewSet(ViewSet):
|
|||
graphedges,
|
||||
graphnodes
|
||||
)
|
||||
return Response(sum([self._get_geojsons(obj) for obj in results], ()))
|
||||
return Response([obj.to_geojson(instance=obj) for obj in results])
|
||||
else:
|
||||
raise ValidationError('No level or space specified.')
|
||||
|
||||
@staticmethod
|
||||
def _get_geojsons(obj):
|
||||
return (((obj.to_shadow_geojson(),) if hasattr(obj, 'to_shadow_geojson') else ()) +
|
||||
(obj.to_geojson(instance=obj),))
|
||||
|
||||
@list_route(methods=['get'])
|
||||
def geometrystyles(self, request, *args, **kwargs):
|
||||
return Response({
|
||||
|
@ -198,7 +193,7 @@ class EditorViewSet(ViewSet):
|
|||
'hole': 'rgba(255, 0, 0, 0.3)',
|
||||
'door': '#ffffff',
|
||||
'area': 'rgba(85, 170, 255, 0.2)',
|
||||
'stair': 'rgba(160, 0, 160, 0.5)',
|
||||
'stair': '#a000a0',
|
||||
'obstacle': '#999999',
|
||||
'lineobstacle': '#999999',
|
||||
'column': '#888888',
|
||||
|
|
|
@ -415,15 +415,19 @@ editor = {
|
|||
}
|
||||
},
|
||||
_weight_for_zoom: function() {
|
||||
return Math.pow(2, editor.map.getZoom())*0.3;
|
||||
return Math.pow(2, editor.map.getZoom())*0.1;
|
||||
},
|
||||
_adjust_line_zoom: function() {
|
||||
var weight = Math.pow(2, editor.map.getZoom())*0.3,
|
||||
var weight = Math.pow(2, editor.map.getZoom())*0.1,
|
||||
factor = Math.pow(2, editor.map.getZoom());
|
||||
editor._arrow_colors = [];
|
||||
for(var i=0;i<editor._line_geometries.length;i++) {
|
||||
var layer = editor._line_geometries[i];
|
||||
layer.setStyle({weight: weight});
|
||||
if (layer.feature.properties.type === 'stair') {
|
||||
layer.setStyle({weight: weight/2});
|
||||
} else {
|
||||
layer.setStyle({weight: weight});
|
||||
}
|
||||
if (layer.feature.properties.type === 'graphedge') {
|
||||
var start_pos = 0.4,
|
||||
end_pos = layer.length-0.4,
|
||||
|
|
|
@ -1,5 +1,3 @@
|
|||
from collections import OrderedDict
|
||||
|
||||
from django.db import models
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
from shapely.geometry import CAP_STYLE, JOIN_STYLE, mapping
|
||||
|
@ -70,27 +68,6 @@ class Stair(SpaceGeometryMixin, models.Model):
|
|||
verbose_name_plural = _('Stairs')
|
||||
default_related_name = 'stairs'
|
||||
|
||||
def to_geojson(self, *args, **kwargs):
|
||||
result = super().to_geojson(*args, **kwargs)
|
||||
original_geometry = result['geometry']
|
||||
draw = self.geometry.buffer(0.05, join_style=JOIN_STYLE.mitre, cap_style=CAP_STYLE.flat)
|
||||
result['geometry'] = format_geojson(mapping(draw))
|
||||
result['original_geometry'] = original_geometry
|
||||
return result
|
||||
|
||||
def to_shadow_geojson(self):
|
||||
shadow = self.geometry.parallel_offset(0.03, 'right', join_style=JOIN_STYLE.mitre)
|
||||
shadow = shadow.buffer(0.019, join_style=JOIN_STYLE.mitre, cap_style=CAP_STYLE.flat)
|
||||
return OrderedDict((
|
||||
('type', 'Feature'),
|
||||
('properties', OrderedDict((
|
||||
('type', 'shadow'),
|
||||
('original_type', self.__class__.__name__.lower()),
|
||||
('original_id', self.id),
|
||||
))),
|
||||
('geometry', format_geojson(mapping(shadow), round=False)),
|
||||
))
|
||||
|
||||
|
||||
class Obstacle(SpaceGeometryMixin, models.Model):
|
||||
"""
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue