<commit_before>/**
 * zrender
 *
 * @author Kener (@Kener-林峰, <EMAIL>)
 *
 * shape类：标线
 */
define(
    function(require) {
        var matrix = require('zrender/tool/matrix');
        
        function MarkLine() {
            this.type = 'markLine';
        }

        MarkLine.prototype =  {
            /**
             * 画刷
             * @param ctx       画布句柄
             * @param e         形状实体
             * @param isHighlight   是否为高亮状态
             * @param updateCallback 需要异步加载资源的shape可以通过这个callback(e)
             *                       让painter更新视图，base.brush没用，需要的话重载brush
             */
            brush : function(ctx, e, isHighlight) {
                var style = e.style || {};
    
                if (isHighlight) {
                    // 根据style扩展默认高亮样式
                    style = this.getHighlightStyle(
                        style,
                        e.highlightStyle || {}
                    );
                }

                ctx.save();
                this.setContext(ctx, style);
    
                // 设置transform
                if (e.__needTransform) {
                    ctx.transform.apply(ctx,this.updateTransform(e));
                }
    
                ctx.beginPath();
                this.buildLinePath(ctx, style);
                ctx.stroke();
                
                this.brushSymbol(e, ctx, style, 0);
                this.brushSymbol(e, ctx, style, 1);
    
                if (typeof style.text != 'undefined') {
                    this.drawText(ctx, style, e.style);
                }
    
                ctx.restore();
    
                return;
            },
        
            /**
             * 创建线条路径
             * @param {Context2D} ctx Canvas 2D上下文
             * @param {Object} style 样式
             */
            buildLinePath : function(ctx, style) {
                //var symbolSize = style.symbolSize;
                var xStart = style.xStart;
                var xEnd = style.xEnd;
                var yStart = style.yStart;
                var yEnd = style.yEnd;
                /*
                if (xStart > xEnd) {
                    xStart -= symbolSize[0];
                    xEnd += symbolSize[1];
                }
                else {
                    xStart += symbolSize[0];
                    xEnd -= symbolSize[1];
                }
                if (yStart > yEnd) {
                    yStart -= symbolSize[0];
                    yEnd += symbolSize[1];
                }
                else {
                    yStart += symbolSize[0];
                    yEnd -= symbolSize[1];
                }
                */
                if (!style.lineType || style.lineType == 'solid') {
                    //默认为实线
                    ctx.moveTo(xStart, yStart);
                    ctx.lineTo(xEnd, yEnd);
                }
                else if (style.lineType == 'dashed'
                        || style.lineType == 'dotted'
                ) {
                    var dashLength =(style.lineWidth || 1)  
                                     * (style.lineType == 'dashed' ? 5 : 1);
                    this.dashedLineTo(
                        ctx,
                        xStart, yStart,
                        xEnd, yEnd,
                        dashLength
                    );
                }
            },

            /**
             * 标线始末标注 
             */
            brushSymbol : function(e, ctx, style, idx) {
                ctx.save();
                ctx.beginPath();
                
                ctx.lineWidth = style.symbolBorder;
                ctx.strokeStyle = style.symbolBorderColor;
                // symbol
                style.iconType = style.symbol[idx].replace('empty', '')
                                                .toLowerCase();
                if (style.symbol[idx].match('empty')) {
                    ctx.fillStyle = 'rgba(0, 0, 0, 0)';
                }
                
                // symbolRotate
                var x = idx === 0 ? style.xStart : style.xEnd;
                var y = idx === 0 ? style.yStart : style.yEnd;<commit_msg>markSymbol 为none bug fix<commit_after>/**
 * zrender
 *
 * @author Kener (@Kener-林峰, <EMAIL>)
 *
 * shape类：标线
 */
define(
    function(require) {
        var matrix = require('zrender/tool/matrix');
        
        function MarkLine() {
            this.type = 'markLine';
        }

        MarkLine.prototype =  {
            /**
             * 画刷
             * @param ctx       画布句柄
             * @param e         形状实体
             * @param isHighlight   是否为高亮状态
             * @param updateCallback 需要异步加载资源的shape可以通过这个callback(e)
             *                       让painter更新视图，base.brush没用，需要的话重载brush
             */
            brush : function(ctx, e, isHighlight) {
                var style = e.style || {};
    
                if (isHighlight) {
                    // 根据style扩展默认高亮样式
                    style = this.getHighlightStyle(
                        style,
                        e.highlightStyle || {}
                    );
                }

                ctx.save();
                this.setContext(ctx, style);
    
                // 设置transform
                if (e.__needTransform) {
                    ctx.transform.apply(ctx,this.updateTransform(e));
                }
    
                ctx.beginPath();
                this.buildLinePath(ctx, style);
                ctx.stroke();
                
                this.brushSymbol(e, ctx, style, 0);
                this.brushSymbol(e, ctx, style, 1);
    
                if (typeof style.text != 'undefined') {
                    this.drawText(ctx, style, e.style);
                }
    
                ctx.restore();
    
                return;
            },
        
            /**
             * 创建线条路径
             * @param {Context2D} ctx Canvas 2D上下文
             * @param {Object} style 样式
             */
            buildLinePath : function(ctx, style) {
                //var symbolSize = style.symbolSize;
                var xStart = style.xStart;
                var xEnd = style.xEnd;
                var yStart = style.yStart;
                var yEnd = style.yEnd;
                /*
                if (xStart > xEnd) {
                    xStart -= symbolSize[0];
                    xEnd += symbolSize[1];
                }
                else {
                    xStart += symbolSize[0];
                    xEnd -= symbolSize[1];
                }
                if (yStart > yEnd) {
                    yStart -= symbolSize[0];
                    yEnd += symbolSize[1];
                }
                else {
                    yStart += symbolSize[0];
                    yEnd -= symbolSize[1];
                }
                */
                if (!style.lineType || style.lineType == 'solid') {
                    //默认为实线
                    ctx.moveTo(xStart, yStart);
                    ctx.lineTo(xEnd, yEnd);
                }
                else if (style.lineType == 'dashed'
                        || style.lineType == 'dotted'
                ) {
                    var dashLength =(style.lineWidth || 1)  
                                     * (style.lineType == 'dashed' ? 5 : 1);
                    this.dashedLineTo(
                        ctx,
                        xStart, yStart,
                        xEnd, yEnd,
                        dashLength
                    );
                }
            },

            /**
             * 标线始末标注 
             */
            brushSymbol : function(e, ctx, style, idx) {
                if (style.symbol[idx] == 'none') {
                    return;
                }
                ctx.save();
                ctx.beginPath();
                
                ctx.lineWidth = style.symbolBorder;
                ctx.strokeStyle = style.symbolBorderColor;
                // symbol
                style.iconType = style.symbol[idx].replace('empty', '')
                                                .toLowerCase();
                if (style.symbol[idx].match('empty')) {
                    ctx.fillStyle = 'rgba(0, 0, 0, 0)';
                }
                
                // symbolRotate
                var x = idx === 0 ? style.xStart : style.xEnd;
                var y = idx === 0 ? style.yStart : style.yEnd;
{'fraction_non_alphanumeric': 0.1027479091995221, 'fraction_numerical': 0.005017921146953405, 'mean_word_length': 0.8213664055700609, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 12, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2730860', 'n_tokens_mistral': 2300, 'n_tokens_neox': 2147, 'n_words': 388}