Space.outside not means „only outside of building“, so False means nothing
This commit is contained in:
parent
aa1e419f56
commit
6a8b7e33ae
3 changed files with 28 additions and 4 deletions
|
@ -24,8 +24,6 @@ class EditorViewSet(ViewSet):
|
|||
for space in spaces.values():
|
||||
if space.outside:
|
||||
space.geometry = space.geometry.difference(buildings_geom)
|
||||
else:
|
||||
space.geometry = space.geometry.intersection(buildings_geom)
|
||||
columns_geom = cascaded_union([column.geometry for column in space.columns.all()])
|
||||
space.geometry = space.geometry.difference(columns_geom)
|
||||
space_holes_geom = cascaded_union([hole.geometry for hole in space.holes.all()])
|
||||
|
@ -103,7 +101,6 @@ class EditorViewSet(ViewSet):
|
|||
other_space.geometry = other_space.geometry.difference(buildings_geom)
|
||||
other_space.color = 'rgba(255, 255, 255, 0.7)'
|
||||
else:
|
||||
other_space.geometry = other_space.geometry.intersection(buildings_geom)
|
||||
other_space.color = 'rgba(255, 255, 255, 0.3)'
|
||||
|
||||
results = chain(
|
||||
|
|
27
src/c3nav/mapdata/migrations/0011_outside_only_outside.py
Normal file
27
src/c3nav/mapdata/migrations/0011_outside_only_outside.py
Normal file
|
@ -0,0 +1,27 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.11.2 on 2017-06-11 11:17
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
def secondary_level_spaces_inside(apps, schema_editor):
|
||||
Space = apps.get_model('mapdata', 'Space')
|
||||
Space.objects.filter(section__on_top_of__isnull=False).update(outside=False)
|
||||
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('mapdata', '0010_on_top_of'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='space',
|
||||
name='outside',
|
||||
field=models.BooleanField(default=False, verbose_name='only outside of building'),
|
||||
),
|
||||
migrations.RunPython(secondary_level_spaces_inside),
|
||||
]
|
|
@ -54,7 +54,7 @@ class Space(SpecificLocation, SectionGeometryMixin, models.Model):
|
|||
)
|
||||
geometry = GeometryField('polygon')
|
||||
category = models.CharField(verbose_name=_('category'), choices=CATEGORIES, default='normal', max_length=16)
|
||||
outside = models.BooleanField(default=False, verbose_name=_('is outside of building'))
|
||||
outside = models.BooleanField(default=False, verbose_name=_('only outside of building'))
|
||||
|
||||
class Meta:
|
||||
verbose_name = _('Space')
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue