标签: transform

通过转换防止 Safari 剪切

我有一个元素绝对位于另一个元素之上。问题是背景元素有一点 JS 可以根据鼠标的移动在 Y 轴上旋转。不幸的是,我在 Safari 中发现了一个在 Firefox 或 Chrome 中没有出现的问题。

http://jsfiddle.net/cehzd/2/

背景元素穿过前景元素,我想知道是否有什么可以防止这种情况,或者让它像 Firefox 一样运行。

编辑:更新了示例以包含背景图像(渐变),这与我在网站中看到的更加准确。这个错误确实出现在 Windows 和 Mac 上(与之前的示例不同,无背景图像,仅在 Windows 上)

css safari transform

3
推荐指数
1
解决办法
5422
查看次数

将列表项旋转 90 度

我正在做一个项目,我想要一个网格和一个带有垂直列表项的右侧部分。所以我想将每个列表项旋转 90 度。

像这样:

列表项旋转 90 度

然而,当我尝试实现这种样式时,每个列表项往往会重叠,保留其以前的高度、宽度和位置。我已经在这个JSFiddle 中隔离了这个问题。

HTML

<body>
  <div class="grid">
    <h1>Some other content</h1>
  </div>
  <ul class="section-list">
    <li class="section-tab"><a href="#">Breakfast</a></li>
    <li class="section-tab"><a href="#">Lunch</a></li>
    <li class="section-tab"><a href="#">Dinner</a></li>
    <li class="section-tab"><a href="#">Blah</a></li>
  </ul>
</body>
Run Code Online (Sandbox Code Playgroud)

CSS

body {
  .grid {
    display: inline-block;
    float: left;
    padding: 10px;
  }
  .section-list {
    float: left;
    max-width: 68px;
    background: #fff;
    .section-tab {
      list-style: none;
      display: inline-block;
      transform: rotate(90deg);
      white-space: nowrap;
      a {
        display: block;
        padding: 16px 20px;
      }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

有谁知道我如何正确构建这些项目?

html css transform rotation

3
推荐指数
1
解决办法
1543
查看次数

QGraphicsItem 中的 ItemCoordinateCache 和 DeviceCoordinateCache 有什么区别?

我已经阅读了关于它们的文档,但我仍然不清楚实际的区别是什么。ItemCoordinateCache 的文档说明:

为项目的逻辑(本地)坐标系启用缓存。

而对于 QGraphicsItem::DeviceCoordinateCache:

缓存在设备坐标的绘制设备级别启用。此模式适用于可以移动但不能旋转、缩放或剪切的项目。

这并没有为我澄清事情。好的,所以 DeviceCoordinateCache 不能用于旋转、缩放或剪切,它使用“设备坐标”。

但这究竟是什么意思?有一个离屏缓冲区,我假设对于本地坐标,缓冲区填充了项目的缓存图像,然后像 QGraphicsPixmapItem 一样起作用,并且对它应用了诸如不透明度和变换矩阵之类的任何效果。我认为问题在于这会光栅化项目的图像,因此文档警告说它不会是像素完美的。

但是它如何与 DeviceCoordinateCache 一起工作?项目是先旋转、剪切和缩放,然后在屏幕外像素图上绘制,还是在像素图上呈现相同但不应用任何转换?

编辑:我还尝试将 DeviceCoordinateCache 设置为旋转和缩放的项目,即使我调整它的大小,它也能完美显示,所以我不明白为什么文档说它不应该与缩放、旋转或剪切的项目一起使用。

qt caching transform qgraphicsitem qgraphicsscene

3
推荐指数
1
解决办法
746
查看次数

饼图中的 D3 文本旋转

我有一个小 D3 脚本:

<script>
    d3.csv("../data/school_attendance.csv", function(data) {
        // Use d3.pie() to create and configure the data that we need in a format that we can enter into.
        let arc_data = d3.pie().value(d => d['YTD Enrollment(Avg)']).padAngle(d => 0.0115)(data);

        // Create the arc factory function that will render each data segment.
        let arc = d3.arc().innerRadius(75).outerRadius(160);

        // Run through each element of arc_data, creating and appening the arc for each one.
        d3.select("svg")
            .append("g")
            .attr("id", "transform")
            .attr("transform", "translate(400, 200)")
            .selectAll('path')
            .data(arc_data)
            .enter()
            .append('path')
            .attr('d', arc) …
Run Code Online (Sandbox Code Playgroud)

javascript svg transform d3.js

3
推荐指数
1
解决办法
1710
查看次数

SVG - 如何使矩形居中?

我有一个带有两个矩形的简单 SVG。我希望“内部”矩形正好位于 SVG 的中间。通过设置xy属性以50%左上角为中心。相反,我想将矩形的中间居中。我试过设置transform-origin为,center但它不起作用。

<svg width="100" height="100">
   <rect width="100%" height="100%" fill="gold" />
  
  
   <rect width="30" height="30" x="50%" y="50%" fill="green" />
</svg> 
Run Code Online (Sandbox Code Playgroud)

如何在不手动指定 x 和 y 属性的情况下实现此类功能?

svg transform center

3
推荐指数
1
解决办法
7637
查看次数

TransformedTargetRegressor 不继承 feature_importances_ 属性

我正在使用TransformedTargetRegressor将我的目标转换为日志空间。它是这样做的

from sklearn.ensemble import GradientBoostingRegressor
from sklearn.compose import TransformedTargetRegressor
clf = TransformedTargetRegressor(regressor=GradientBoostingRegressor(**params),
       func=np.log1p, inverse_func=np.expm1)
Run Code Online (Sandbox Code Playgroud)

但是当我后来打电话时

feature_importance = clf.feature_importances_
Run Code Online (Sandbox Code Playgroud)

我得到

AttributeError: 'TransformedTargetRegressor' 对象没有属性 'feature_importances_'

我会认为原始类的所有属性都会被继承。如何解决这个问题?

有关更多上下文,这里是一个官方示例。用我的替换初始化行会导致崩溃。

python regression transform linear-regression scikit-learn

3
推荐指数
1
解决办法
654
查看次数

找不到transform-api.jar

我有一个在 Android Studio 上次更新中成功同步的项目。我将我的 android studio 更新到版本 3.3.2 大约需要 3 天时间。之后,我可以成功创建一个新项目,但无法同步我最近的任何项目,我不知道为什么。

错误是

(错误:找不到transform-api.jar(com.android.tools.build:transform-api:2.0.0-deprecated-use-gradle-api)。在以下位置搜索:https : //dl.google .com/dl/android/maven2/com/android/tools/build/transform-api/2.0.0-deprecated-use-gradle-api/transform-api-2.0.0-deprecated-use-gradle-api.jar )。

在此处输入图片说明

java android transform gradle android-gradle-plugin

3
推荐指数
1
解决办法
1870
查看次数

如何深度转换 Ruby 哈希值

我有一个看起来像这样的哈希:

hash = {
  'key1' => ['value'],
  'key2' => {
    'sub1' => ['string'],
    'sub2' => ['string'],
  },
  'shippingInfo' => {
                   'shippingType' => ['Calculated'],
                'shipToLocations' => ['Worldwide'],
              'expeditedShipping' => ['false'],
        'oneDayShippingAvailable' => ['false'],
                   'handlingTime' => ['3'],
    }
  }
Run Code Online (Sandbox Code Playgroud)

我需要转换每个值,它是数组中的单个字符串,以便它最终像这样:

hash = {
  'key1' =>  'value' ,
  'key2' => {
    'sub1' => 'string' ,
    'sub2' => 'string' ,
  },
  'shippingInfo' => {
                   'shippingType' => 'Calculated' ,
                'shipToLocations' => 'Worldwide' ,
              'expeditedShipping' => 'false' ,
        'oneDayShippingAvailable' => 'false' ,
                   'handlingTime' => '3' , …
Run Code Online (Sandbox Code Playgroud)

ruby hash transform

3
推荐指数
1
解决办法
3746
查看次数

如何确定透视变换后点在新图像平面中的位置?

我正在使用 OpenCV+Python+Numpy 并且我在图像中有三个点,我知道这些点的确切位置。

(P1, P2);
 N1
Run Code Online (Sandbox Code Playgroud)

我要将图像转换为另一个视图(例如,我将透视图转换为侧视图)。如果我这样做,我将无法获得图像平面中这三个点的确切位置。我应该以一种可以获得这些点的新坐标的方式编写代码。

   pts1=np.float32([[867,652],[1020,580],[1206,666],[1057,757]]) 

   pts2=np.float32([[700,732],[869,754],[906,916],[712,906]])


   matrix=cv2.getPerspectiveTransform(pts1,pts2)


   result=cv2.warpPerspective(Image1,matrix,(1920,1080))

   cv2.imshow('Image',Image1) cv2.imshow('Tran',result)
Run Code Online (Sandbox Code Playgroud)

我的问题是:如何确定这 3 个点的新位置?

python opencv transform image-processing perspectivecamera

3
推荐指数
1
解决办法
3843
查看次数

如何使用transform-origin让svg元素从中心旋转?

我正在尝试对 svg rect 元素进行非常简单的旋转。我希望这个元素相对于它的中心旋转,我正在尝试使用 transform-origin 属性来实现这一点(参见代码片段)。尽管尝试使用“center”或“50%”从中心旋转,但它从不想从其真正的中心旋转。

谁能解释为什么这不起作用?我看过类似的帖子,关于 transform-origin 是一个 css 属性,而不是一个 svg 属性,但我相信这现在已经过时了,并且 transform-origin 应该可以工作。

此方法适用于 div 元素,但不适用于 svg 元素。

svg {
  border: solid;
}

svg > rect {
  animation: test 3s infinite;
}

@keyframes test {
  100% { 
    transform: rotate(360deg); 
    transform-origin: center center;
  } 
}
Run Code Online (Sandbox Code Playgroud)
<svg width="200" height="110" viewBox="-200 -400 1000 1000">
  <rect width="600" height="300" style="fill:rgb(0,0,255);stroke-width:3;stroke:rgb(0,0,0)" />
</svg>
Run Code Online (Sandbox Code Playgroud)

css svg transform css-animations

3
推荐指数
1
解决办法
47
查看次数