Skip to content

Commit

Permalink
opera: adds opera previewer
Browse files Browse the repository at this point in the history
 * Closes cernopendata#1319.

Signed-off-by: Ioannis Tsanaktsidis <ioannis.tsanaktsidis@cern.ch>
  • Loading branch information
ioannistsanaktsidis committed Sep 4, 2017
1 parent 2a1af40 commit 96a125a
Show file tree
Hide file tree
Showing 4 changed files with 259 additions and 8 deletions.
10 changes: 5 additions & 5 deletions cernopendata/modules/pages/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -137,17 +137,17 @@ def splitting(value, delimiter='/'):


@blueprint.route('/visualise/events/<string:experiment>')
def visualise_events(experiment='CMS'):
@blueprint.route('/visualise/events/<string:experiment>/<int:eventid>')
def visualise_events(experiment='CMS', eventid=None):
"""Display visualisations."""
exp_names = get_collection_names(['ALICE', 'LHCb', 'ATLAS'])

breadcrumbs = [{}, {'url': '.education', 'text': 'Education'},
{'url': '.education', 'text': 'Visualise Events'}]
try:
return render_template(
'visualise_events.html',
'cernopendata_pages/visualise_events_{}.html'.format(
experiment.lower()),
eventid=eventid,
experiment=experiment,
exp_names=exp_names,
breadcrumbs=breadcrumbs)
except TemplateNotFound:
return abort(404)
Expand Down
41 changes: 39 additions & 2 deletions cernopendata/modules/theme/bundles.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
# '/bootstrap-switch.css',
filters='cleancssurl',
),
depends=('scss/*.scss', ),
depends=('scss/*.scss',),
output='gen/cernopendata.%(version)s.css',
npm={
'angular-loading-bar': '~0.9.0',
Expand All @@ -63,7 +63,6 @@
},
)


visualise_js = NpmBundle(
'node_modules/d3/d3.min.js',
'node_modules/flot/jquery.flot.js',
Expand Down Expand Up @@ -99,3 +98,41 @@
"bootstrap-sass": "~3.3.5",
}
)

opera_js = NpmBundle(
'node_modules/demobbed-viewer/js/lib/d3.js',
'node_modules/demobbed-viewer/js/lib/jquery.js',
'node_modules/demobbed-viewer/js/lib/three.js',
'node_modules/demobbed-viewer/js/lib/three3DExtras.min.js',
'node_modules/demobbed-viewer/js/DetCfg-def.js',
'node_modules/demobbed-viewer/js/Utils-def.js',
'node_modules/demobbed-viewer/js/Hits-defs.js',
'node_modules/demobbed-viewer/js/Vertex-def.js',
'node_modules/demobbed-viewer/js/TrackECC-def.js',
'node_modules/demobbed-viewer/js/Event-def.js',
'node_modules/demobbed-viewer/js/loadEvent.js',
'node_modules/demobbed-viewer/js/DetElems-defs.js',
'node_modules/demobbed-viewer/js/MgrGeomED-def.js',
'node_modules/demobbed-viewer/js/MgrDrawED-def.js',
'node_modules/demobbed-viewer/js/MgrDrawECC-def.js',
'node_modules/demobbed-viewer/js/Demobbed-def.js',
'node_modules/demobbed-viewer/js/init.js',
'node_modules/demobbed-viewer/js/Demobbed-fills.js',
'node_modules/demobbed-viewer/js/MgrGeomED-fills.js',
'node_modules/demobbed-viewer/js/MgrGeomED-funcAdd.js',
'node_modules/demobbed-viewer/js/MgrDrawED-funcAdd.js',
'node_modules/demobbed-viewer/js/MgrDrawECC-funcAdd.js',
output='gen/cernopendata.opera.%(version)s.js',
npm={
"demobbed-viewer": "~1.0.2"
},
)

opera_css = NpmBundle(
'node_modules/demobbed-viewer/css/demobbed.css',
filters='node-scss, cleancss',
output='gen/cernopendata.opera.%(version)s.css',
npm={
"demobbed-viewer": "~1.0.2"
}
)
211 changes: 211 additions & 0 deletions cernopendata/templates/cernopendata_pages/visualise_events_opera.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,211 @@
{%- extends config.BASE_TEMPLATE %}

{%- block css %}
{{super()}}
{% assets "opera_css" %}<link href="{{ ASSET_URL }}" rel="stylesheet">{% endassets %}
{% endblock %}


{% block page_body %}
{% assets "opera_js" %}<script src="{{ ASSET_URL }}"></script>{% endassets %}
<div class="container">
<div class="row">
<div class="col-md-10 col-md-offset-1 pg-header">
<h3>Visualise OPERA detector events</h3>
</div>

<div id="demobbed-viewer"
<div class="container-fluid">

<div class="row">

<table>
<tr>

<td id="opera-logo"> <img src="/static/node_modules/demobbed-viewer/graphics/OPERA.png" alt="OPERA" height="63"> </td>

<td>

<table>

<tr>
<td colspan="2">

<div id="toolbarED">

<label for="inputEvent">Event:</label>
<input id="inputEvent" onkeypress="loadEvent(this, event, value);" size="12">

<!-- ----------------------------------------- -->

<img src="/static/node_modules/demobbed-viewer/graphics/event-prev.png" onclick="demobbed.loadPrevOrNextEvent(-1);" alt="Prev. event" height="32">
<img src="/static/node_modules/demobbed-viewer/graphics/event-reload.png" onclick="demobbed.loadPrevOrNextEvent(0);" alt="Reload event" height="32">
<img src="/static/node_modules/demobbed-viewer/graphics/event-next.png" onclick="demobbed.loadPrevOrNextEvent(1);" alt="Next event" height="32">

<img src="/static/node_modules/demobbed-viewer/graphics/zoom-in.png" onclick="demobbed.mgrDrawED().zoomIn();" alt="Zoom in" height="32">
<img src="/static/node_modules/demobbed-viewer/graphics/zoom-out.png" onclick="demobbed.mgrDrawED().zoomOut();" alt="Zoom out" height="32">

<img src="/static/node_modules/demobbed-viewer/graphics/zoom-brick.png" onclick="demobbed.mgrDrawED().zoomToBrick();" alt="Zoom to brick" height="32">
<img src="/static/node_modules/demobbed-viewer/graphics/zoom-event.png" onclick="demobbed.mgrDrawED().zoomToEvent();" alt="Zoom to event" height="32">

<!-- ----------------------------------------- -->

<img src="/static/node_modules/demobbed-viewer/graphics/draw-ECC.png" onclick="demobbed.mgrDrawECC().drawECC(1);" alt="Draw ECC tracks" height="32">

</div>

</td>
</tr>

</table>

</td>

</tr>
</table>

</div> <!-- <div class="row"> -->

<div class="row">

<div id="div-ED-XZ">

<table>
<tr>

<td id="controls-ED-XZ">
<table id="tableMoveViewControlsXZ">
<tr>
<td colspan="2"> <img src="/static/node_modules/demobbed-viewer/graphics/nu-beam.png" alt="Nu beam" width="64"> </td>
</tr>
<tr>
<td> <img src="/static/node_modules/demobbed-viewer/graphics/view-up.png" onclick="demobbed.mgrDrawED().moveView(0, 1);" alt="Move XZ up"> </td>
<td> <img src="/static/node_modules/demobbed-viewer/graphics/view-down.png" onclick="demobbed.mgrDrawED().moveView(0, -1);" alt="Move XZ down"> </td>
</tr>
<tr>
<td> <img src="/static/node_modules/demobbed-viewer/graphics/view-left.png" onclick="demobbed.mgrDrawED().moveView(2, -1);" alt="Move left"> </td>
<td> <img src="/static/node_modules/demobbed-viewer/graphics/view-right.png" onclick="demobbed.mgrDrawED().moveView(2, 1);" alt="Move right"> </td>
</tr>
</table>
</td>

<td>
<div id="canvas-ED-XZ">
<span id="canvas-ED-XZ-title" class="canvas-title"></span>
</div>
</td>

</tr>
</table>

</div>

<div id="div-ED-YZ">

<table>
<tr>

<td id="controls-ED-YZ">
<table id="tableMoveViewControlsYZ">
<tr>
<td> <img src="/static/node_modules/demobbed-viewer/graphics/view-up.png" onclick="demobbed.mgrDrawED().moveView(1, 1);" alt="Move YZ up"> </td>
<td> <img src="/static/node_modules/demobbed-viewer/graphics/view-down.png" onclick="demobbed.mgrDrawED().moveView(1, -1);" alt="Move YZ down"> </td>
</tr>
<tr>
<td colspan="2"> <img src="/static/node_modules/demobbed-viewer/graphics/nu-beam.png" alt="Nu beam" width="64"> </td>
</tr>
</table>
</td>

<td>
<div id="canvas-ED-YZ">
<span id="canvas-ED-YZ-title" class="canvas-title"></span>
</div>
</td>

</tr>
</table>

</div>

</div> <!-- <div class="row"> -->

<div class="row">

<div id="div-ECC">

<table>
<tr>

<td id="controls-ECC">

<table id="tableAnimControls">
<tr>
<td colspan="2"> <img src="/static/node_modules/demobbed-viewer/graphics/blank-image.png" alt="Nu beam" width="64"> </td>
</tr>
</table>

</td>

<td>
<table>

<tr>
<td>
<div id="toolbarECC">

<img src="/static/node_modules/demobbed-viewer/graphics/event-prev.png" onclick="demobbed.loadPrevOrNextEvent(-1);" alt="Prev. event" height="32">
<img src="/static/node_modules/demobbed-viewer/graphics/event-reload.png" onclick="demobbed.loadPrevOrNextEvent(0);" alt="Reload event" height="32">
<img src="/static/node_modules/demobbed-viewer/graphics/event-next.png" onclick="demobbed.loadPrevOrNextEvent(1);" alt="Next event" height="32">

<img src="/static/node_modules/demobbed-viewer/graphics/anim-decel.png" onclick="demobbed.mgrDrawECC().decelerateAnimation();" alt="Pause animation" height="32">
<img src="/static/node_modules/demobbed-viewer/graphics/anim-accel.png" onclick="demobbed.mgrDrawECC().accelerateAnimation();" alt="Start animation" height="32">

<img src="/static/node_modules/demobbed-viewer/graphics/close-ECC.png" onclick="demobbed.mgrDrawECC().drawECC(0);" alt="Erase ECC tracks" height="32">

</div>
</td>
</tr>

<tr>
<td>
<div id="div-canvas-ECC">

<span id="canvas-ECC-title" class="canvas-title"></span>

<!-- <div id="div-axes-ECC"> -->
<canvas id="canvas-axes-ECC"></canvas>
<!-- </div> -->

<canvas id="canvas-legend-ECC" class="canvas-bordered" width="165" height="125"></canvas>

<canvas id="canvas-ECC" class="canvas-bordered"></canvas>

</div>
</td>
</tr>

</table>
</td>

</tr>
</table>

</div>

</div> <!-- <div class="row"> -->

</div> <!-- "container-fluid" -->
<!-- ----------------------------------------- -->

<div id="divScrLoadEvent">
{% if not eventid %}
<script id="scrLoadEvent" src="/static/node_modules/demobbed-viewer/js/nuEventsData/loadEvent10120009376.js"> </script>
{% else %}
<script id="scrLoadEvent" src="/static/node_modules/demobbed-viewer/js/nuEventsData/loadEvent{{ eventid }}.js"> </script>
{% endif %}
</div>

</section>

{% endblock %}
5 changes: 4 additions & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,10 @@
':glossary_js',
'cernopendata_glossary_css = cernopendata.modules.theme.bundles'
':glossary_css',

'opera_js = cernopendata.modules.theme.bundles'
':opera_js',
'opera_css = cernopendata.modules.theme.bundles'
':opera_css',
],
'invenio_base.blueprints': [
'cernopendata = cernopendata.views:blueprint',
Expand Down

0 comments on commit 96a125a

Please sign in to comment.