Files
ShooterHub/analyzer/__pycache__/pdf_report.cpython-311.pyc

32 lines
5.5 KiB
Plaintext
Raw Normal View History

2026-03-16 16:09:19 +01:00
<EFBFBD>
=<19>iR <00><00><><00>ddlZddlZddlmZddlmZdZdZdZdede d e d
e
fd <0B>Z d efd <0A>Z d edefd<0E>Z d ededefd<11>Zd edefd<13>Zd ede fd<15>ZdS)<16>N)<01>datetime)<01>FPDF<44>P<00>2<00><00>overall<6C> group_stats<74>charts<74>returnc<00>B<00>t<00><00>}|<03>dd<02><03><00>|<03><00><00>t|<03><00>t ||<00><00>t ||<02><00>D]\}}t |||<05><00><00>t|<03><00><00><00><00>S)NT<4E>)<02>auto<74>margin) r<00>set_auto_page_break<61>add_page<67> _title_block<63>_overall_section<6F>zip<69>_group_section<6F>bytes<65>output)rr r
<00>pdf<64>stat<61> chart_b64s <20>D/home/gcolangelo/Work/perso/BallisticAnalyzer/analyzer/pdf_report.py<70> generate_pdfr s<><00><00>
<0E>&<26>&<26>C<EFBFBD><07><1B><1B><14>b<EFBFBD><1B>1<>1<>1<><07>L<EFBFBD>L<EFBFBD>N<EFBFBD>N<EFBFBD>N<EFBFBD><10><13><15><15><15><14>S<EFBFBD>'<27>"<22>"<22>"<22><1E>{<7B>F<EFBFBD>3<>3<>-<2D>-<2D><0F><04>i<EFBFBD><16>s<EFBFBD>D<EFBFBD>)<29>,<2C>,<2C>,<2C>,<2C> <10><13><1A><1A><1C><1C> <1E> <1E><1E>rc<00>F<00>|<00>ddd<03><00>|<00>dddddd <09>
<EFBFBD><00>|<00>dd d <0C><00>|<00>dd dtj<00><00><00>d<0F><00><00><00>ddd <09>
<EFBFBD><00>|<00>d<10><00>dS)N<> Helvetica<63>B<>r<00> zBallistic Analysis Report<72>LMARGIN<49>NEXT<58>C)<03>new_x<5F>new_y<5F>align<67><00> <00>z Generated: z%Y-%m-%d %H:%M<>)<06>set_font<6E>cellr<00>now<6F>strftime<6D>ln)rs rrrs<><00><00><07>L<EFBFBD>L<EFBFBD><1B>c<EFBFBD>2<EFBFBD>&<26>&<26>&<26><07>H<EFBFBD>H<EFBFBD>Q<EFBFBD><02>/<2F>y<EFBFBD><06>VY<56>H<EFBFBD>Z<>Z<>Z<><07>L<EFBFBD>L<EFBFBD><1B>b<EFBFBD>!<21>$<24>$<24>$<24><07>H<EFBFBD>H<EFBFBD> <09>1<EFBFBD>B<>h<EFBFBD>l<EFBFBD>n<EFBFBD>n<EFBFBD>-<2D>-<2D>.?<3F>@<40>@<40>B<>B<><17>v<EFBFBD>S<EFBFBD> <0A><06><06><06>
<08>F<EFBFBD>F<EFBFBD>1<EFBFBD>I<EFBFBD>I<EFBFBD>I<EFBFBD>I<EFBFBD>Irc<00><><00>t|d<01><00>dt|d<00><00>fd|dd<06>fd|dd<06>fd |d
d<06>fd |d <00>
|d d<06>nd fg}t||<02><00>dS)NzOverall Statisticsz Total shots<74>count<6E> Min speed<65> min_speed<65>.4f<EFBFBD> Max speed<65> max_speed<65>
Mean speed<65>
mean_speed<EFBFBD>Std dev (speed)<29> std_speed<65>)<03>_section_heading<6E>str<74>_table)rr<00>rowss rrr(s<><00><00><14>S<EFBFBD>.<2E>/<2F>/<2F>/<2F> <16>3<EFBFBD>w<EFBFBD>w<EFBFBD>/<2F>0<>0<>1<> <14>g<EFBFBD>k<EFBFBD>2<>8<>8<>9<> <14>g<EFBFBD>k<EFBFBD>2<>8<>8<>9<> <15>g<EFBFBD>l<EFBFBD>3<>9<>9<>:<3A> <1A>W<EFBFBD>[<5B>=Q<>=]<5D>w<EFBFBD>{<7B>3<>9<>9<>9<>ch<63>i<>  <06>D<EFBFBD> <0B>3<EFBFBD><04><15><15><15><15>rrrc <00>P<00>|<00>d<01><00>d|d<00>d|d<00>d|d<00>d|d <00>d
<EFBFBD> }t||<03><00>d |d d <0A>fd|dd <0A>fd|dd <0A>fd|d<00>
|dd <0A>ndfg}t||<04><00>tj|<02><00>}|<00><00><00>dz|jkr|<00><00><00>|<00>tj
|<05><00>|j |j <00><16><00>|<00>d<01><00>dS)N<>zGroup <20> group_indexu<20>
time_startz to <20>time_endz (r3z shot(s))r4r5r6r7r8r9r:r;r<r=<00>K)<02>x<>w) r1r>r@<00>base64<36> b64decode<64>get_y<5F>page_break_triggerr<00>image<67>io<69>BytesIO<49>l_margin<69>epw)rrr<00>headingrA<00> img_bytess rrr4s`<00><00><07>F<EFBFBD>F<EFBFBD>1<EFBFBD>I<EFBFBD>I<EFBFBD>I<EFBFBD> %<25><14>m<EFBFBD>$<24> %<25> %<25> <0F> <0C> <1D> %<25> %<25>#'<27>
<EFBFBD>#3<> %<25> %<25> <10><17>M<EFBFBD> %<25> %<25> %<25> <0C>
<15>S<EFBFBD>'<27>"<22>"<22>"<22>
<15>d<EFBFBD>;<3B>/<2F>5<>5<>6<> <14>d<EFBFBD>;<3B>/<2F>5<>5<>6<> <15>d<EFBFBD><<3C>0<>6<>6<>7<> <1A>$<24>{<7B>:K<>:W<>t<EFBFBD>K<EFBFBD>0<>6<>6<>6<>]b<>c<>  <06>D<EFBFBD>  <0B>3<EFBFBD><04><15><15><15><16> <20><19>+<2B>+<2B>I<EFBFBD>
<EFBFBD>y<EFBFBD>y<EFBFBD>{<7B>{<7B>R<EFBFBD><17>#<23>0<>0<>0<> <0B> <0C> <0C><0E><0E><0E><07>I<EFBFBD>I<EFBFBD>b<EFBFBD>j<EFBFBD><19>#<23>#<23>s<EFBFBD>|<7C>s<EFBFBD>w<EFBFBD>I<EFBFBD>?<3F>?<3F>?<3F><07>F<EFBFBD>F<EFBFBD>1<EFBFBD>I<EFBFBD>I<EFBFBD>I<EFBFBD>I<EFBFBD>Ir<00>textc<00><><00>|<00>ddd<03><00>|<00>ddd<06><00>|<00>dd|d d
d <0B> <0C><00>|<00>d <0A><00>dS)Nrr r"<00><><00><><00><>rr,r#r$T)r&r'<00>fill<6C>)r-<00>set_fill_colorr.r1)rrUs rr>r>Msa<00><00><07>L<EFBFBD>L<EFBFBD><1B>c<EFBFBD>2<EFBFBD>&<26>&<26>&<26><07><16><16>s<EFBFBD>C<EFBFBD><13>%<25>%<25>%<25><07>H<EFBFBD>H<EFBFBD>Q<EFBFBD><01>4<EFBFBD>y<EFBFBD><06>T<EFBFBD>H<EFBFBD>B<>B<>B<><07>F<EFBFBD>F<EFBFBD>1<EFBFBD>I<EFBFBD>I<EFBFBD>I<EFBFBD>I<EFBFBD>IrrAc
<00><><00>t|<01><00>D]<5D>\}\}}|dzdk}|r|<00>ddd<05><00>n|<00>ddd<06><00>|<00>ddd <09><00>|<00>tt
|d|<05>
<EFBFBD><00>|<00>dd d <09><00>|<00>t t
|d|d d <0A><0E><00><00><>|<00>d<0F><00>dS)Nr[r<00><><00><><00><>rYrr)<00>
)<02>borderrZr r#r$)rbrZr&r'<00>)<08> enumerater\r-r.<00>
_COL_LABEL<EFBFBD>_ROW_H<5F>
_COL_VALUEr1)rrA<00>i<>label<65>valuerZs rr@r@Ts<><00><00>&<26>t<EFBFBD>_<EFBFBD>_<EFBFBD>`<01>`<01><19><01>><3E>E<EFBFBD>5<EFBFBD><10>1<EFBFBD>u<EFBFBD><01>z<EFBFBD><04>-1<>X<><03><1A><1A>3<EFBFBD><03>S<EFBFBD>)<29>)<29>)<29>s<EFBFBD>7I<37>7I<37>#<23>s<EFBFBD>TW<54>7X<37>7X<37><58> <0B> <0C> <0C>[<5B>"<22>b<EFBFBD>)<29>)<29>)<29> <0B><08><08><1A>V<EFBFBD>U<EFBFBD>1<EFBFBD>4<EFBFBD><08>@<40>@<40>@<40> <0B> <0C> <0C>[<5B>#<23>r<EFBFBD>*<2A>*<2A>*<2A> <0B><08><08><1A>V<EFBFBD>U<EFBFBD>1<EFBFBD>4<EFBFBD>y<EFBFBD>X^<5E><08>_<>_<>_<>_<><07>F<EFBFBD>F<EFBFBD>1<EFBFBD>I<EFBFBD>I<EFBFBD>I<EFBFBD>I<EFBFBD>Ir)rJrOr<00>fpdfrrergrf<00>dict<63>listrrrrr?rr>r@<00>rr<00><module>ros.<00><01> <0A> <0A> <0A> <0A> <09> <09> <09> <09><1D><1D><1D><1D><1D><1D><15><15><15><15><15><15> <0F>
<EFBFBD> <0F>
<EFBFBD>
<EFBFBD><06> <1F>$<24> <1F>T<EFBFBD> <1F>4<EFBFBD> <1F>E<EFBFBD> <1F> <1F> <1F> <1F> <0E>d<EFBFBD> <0E> <0E> <0E> <0E> <16>$<24> <16><14> <16> <16> <16> <16><0E><04><0E>D<EFBFBD><0E>S<EFBFBD><0E><0E><0E><0E>2<0E>$<24><0E>c<EFBFBD><0E><0E><0E><0E><0E><04><0E>D<EFBFBD><0E><0E><0E><0E><0E>r