viewport

阅读 / 问答 / 标签

ObjectARX 自定义实体重写viewportDraw(AcGiViewPortDraw*)的问题

模型空间中是调用WorldDraw函数,只有返回True才能正确绘制,ViewPortDraw是在视口中显示实体用的函数。

求教 关于vue web项目手机端viewport设置为什么无效

是怎么回事

umi中使用postcss-px-to-viewport进行移动端适配

4.完事! 附全图:

移动开发 android:fillViewport="true" , android:scrollbars="none" 是干什么的呀?求详解

android:fillViewport="true"当一个高度值不足scrollview的子控件fillparent的时候,单独的定义android:layout_height="fill_parent"是不起作用的,必须加上fillviewport属性,当子控件的高度值大于scrollview的高度时,这个标签就没有任何意义了。android:scrollbars="none" 隐藏滚动条

Meta定义的有关视口viewport,下列说法不正确的是()。

Meta定义的有关视口viewport,下列说法不正确的是()。 A.width:宽度,一般设为900px。 B.height:和width相对应,指定高度。 C.initial-scale:初始缩放比例,也即是当页面第一次load的时候缩放比例。 D.maximum-scale:允许用户缩放到的最大比例。minimum-scale:允许用户缩放到的最小比例。 正确答案:A

ext中viewport问题?分三部分top west center其中west是菜单树,点击菜单会在center中显示其主要内容。。

<%@ Register Assembly="Coolite.Ext.Web" Namespace="Coolite.Ext.Web" TagPrefix="ext" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" ><head runat="server"> <title></title> <script type="text/javascript"> function GetTree(node) { var eIdtd = document.getElementById("txtTitle"); var enumPare = document.getElementById("txtContent"); eIdtd.innerHTML ="编号:"+ node.id; enumPare.innerHTML ="内容:"+ node.text; } </script> </head><body> <form id="form1" runat="server"> <div> <ext:ScriptManager ID="ScriptManager1" runat="server"> </ext:ScriptManager> <ext:ViewPort ID="ViewPort1" runat="server"> <Body> <ext:BorderLayout ID="BorderLayout1" runat="server"> <North MarginsSummary="5 5 5 5"> <ext:Panel AllowDomMove="true" ID="Paneles" Height="250" runat="server" Title="top" Icon="Information" Header="true" Collapsed="true" Collapsible="true"> <Body> <div style="float:left; white-space:normal; padding-left:5px; width:50%; vertical-align:middle; "><p> 导航:这是上边! </p></div> </Body> </ext:Panel> </North> <West MinWidth="225" MaxWidth="400" Collapsible="true" Split="true" MarginsSummary="0 0 0 0" CMarginsSummary="0 0 0 0"> <ext:TreePanel ID="treePark" Header="false" Frame="false" Title="Tree" Width="300" Lines="false" BodyBorder="false" RootVisible="false" runat="server"> <Root> <ext:TreeNode Text="Composers" Expanded="true"> <Nodes> <ext:TreeNode Text="Beethoven" Icon="UserGray"> <Nodes> <ext:TreeNode Text="Concertos"> <Nodes> <ext:TreeNode NodeID="1" Text="No. 1 - C" Icon="Music" /> <ext:TreeNode NodeID="2" Text="No. 2 - B-Flat Major" Icon="Music" /> <ext:TreeNode NodeID="3" Text="No. 3 - C Minor" Icon="Music" /> <ext:TreeNode NodeID="4" Text="No. 4 - G Major" Icon="Music" /> <ext:TreeNode NodeID="5" Text="No. 5 - E-Flat Major" Icon="Music" /> </Nodes> </ext:TreeNode> <ext:TreeNode Text="Quartets" > <Nodes> <ext:TreeNode NodeID="6" Text="Six String Quartets" Icon="Music" /> <ext:TreeNode NodeID="7" Text="Three String Quartets" Icon="Music" /> <ext:TreeNode NodeID="8" Text="Grosse Fugue for String Quartets" Icon="Music" /> </Nodes> </ext:TreeNode> <ext:TreeNode Text="Sonatas" > <Nodes> <ext:TreeNode Text="Sonata in A Minor" Icon="Music" /> <ext:TreeNode Text="sonata in F Major" Icon="Music" /> </Nodes> </ext:TreeNode> </Nodes> </ext:TreeNode> </Nodes> </ext:TreeNode> </Root> <Listeners> <Click Handler="Javascript:GetTree(node);" /> </Listeners> </ext:TreePanel> </West> <Center> <ext:Panel ID="panel1" Height="500px" BodyBorder="false" Frame="false" AutoScroll="true" runat="server"> <Body> <table cellpadding="0" cellspacing="0" width="98%" border="0"> <tr> <td height="20" colspan="2" > <span style=" font-size:xx-large; text-align:center "> 这是中间部位 </span> </td> </tr> <tr> <td width="20" height="20" rowspan="2" align="center" valign="top"> </td> <td style="height: 50px; vertical-align: bottom; overflow: scroll;" align="center"> <asp:Label ID="txtTitle" runat="server"></asp:Label> </td> </tr> <tr> <td align="left" id="txtContent1"> <asp:Label ID="txtContent" runat="server"></asp:Label> </td> </tr> </table> </Body> </ext:Panel> </Center> </ext:BorderLayout> </body> </ext:ViewPort> </div> </form></body></html>这个直接建一个页面,粘贴进去就可以用了!

想请问,iOS10网页viewport怎么禁止缩放

禁用双指缩放:document.documentElement.addEventListener("touchstart", function (event) { if (event.touches.length > 1) { event.preventDefault(); }}, false);禁用手指双击缩放:var lastTouchEnd = 0;document.documentElement.addEventListener("touchend", function (event) { var now = Date.now(); if (now - lastTouchEnd <= 300) { event.preventDefault(); } lastTouchEnd = now;}, false);试验过了,确实可行,但是不确定会不会造成其他影响。

maya2013 Viewport 2.0能打开用不了

那是你的显卡低了点吧。Viewpot2.0是硬件显示实时效果。显卡如果不够强大是很容易卡死的。建议对自己硬件不够信心的还是少开Viewport为妙啊。他可能比高显对硬件的要求还要高。可以渲染试试,或是高显看看。

为什么viewport的width=device-width,加上去没效果

我查了下viewport,有几个属性:width - viewport的宽度 height - viewport的高度initial-scale - 初始的缩放比例minimum-scale - 允许用户缩放到的最小比例maximum-scale - 允许用户缩放到的最大比例user-scalable - 用户是否可以手动缩放估计是本身页面尺寸就是那么大吧【本人还没开始接触手机WEB前端,请恕我见识短浅

vant+postcss-px-to-viewport 记一次移动端网页适配之旅

本次的需求其实很简单,即为公司制作一个可以在微信公众号上使用的网页,但是由于自己对移动端组件以及很多东西不熟悉,踩了很多坑。 一开始直接动手写乃至用element,完全达不到合格的美观程度,缩放element-ui元素很困难(在被科普了vant这样的移动端ui之后才知道这是一种愚蠢的行为),于是终于操起vant vant很好用,但是把vant组件直接放在页面上遇到一个直接问题:太小了,同样尝试了一下缩放组件,但是这个操作工程量大且不一定美观,于是研究了一番发现:vant是按照375px的设计稿写的,其css大多单位是px,这能直接用就怪了,咨询了一波公司的前辈,得知他是把vant css中的px替换为rem来操作的,于是我打开css直接CTRL+F px转rem,当然两者有16倍关系我还是懂的,于是采取了根元素 我屏幕宽为1080px,将元素长度宽度除16再乘(1080/375)可让vant元素刚好填满我的屏幕,当然对于别的屏宽就暂时顾不了了,但是毕竟可用@media and screen来解决吗。 实践结果是,vantage元素合适地填满了我的chrome,填满了我的手机屏,却在微信处翻了车,一个复选框的边框厚得像门一样,此处图和原因再补。 发现这种方法没办法达成对微信的适配后,我转向了插件,起初使用的是postcss-pxtorem,其自动将css中的px转为rem,但这种方法还要搭配 lib-flexible 食用,而该库的作者这样告诉我们:有了viewport适配,我们已经退出历史舞台了。毕竟用一个库总比用两个方便,而且人家库作者都这么说了,便安装postcss-px-to-viewport,中间踏了点webpack的坑,但是postcss-px-to-viewport正常工作后效果拔群,一步完成适配,也不用去想@media and screen了。 关于px转rem与viewport,具体方案见 https://sunniejs.github.io/vue-h5-template/#/zh-cn/rem

"screen""关键字是匹配设备的物理屏幕还是浏览器的viewport

"screen""关键字是匹配设备的物理屏幕还是浏览器的viewport在显示面积上手机屏幕相对桌面显示器要小很多,在几年前(现在也如此)大部分网站都是为桌面显示器浏览而设计,很少考虑到适应手机屏幕,所以如果用手机浏 览大多网站时会出现问题,比如常见固定宽度的网页会出现横向竖向滑动条,当然这不算什么大问题;但如果是浏览流动布局的网页那情况会非常糟糕,设想一个宽 度为30%的侧边栏对于320px手机屏幕而言也就96px,只能容纳8个12px的汉字,可阅读性非常差。为了让手机也能获得良好的网页浏览体验,Apple找到了一个办法:在移动版(iOS)的Safari中定义了viewport meta标签①,它的作用就是创建一个虚拟的窗口(viewport),而且这个虚拟窗口的分辨率接近于桌面显示器,Apple将其定位为980px②。

3DMAX里VIEWPORT显示的物体表面有很多碎片,怎么解决.

不是你的显卡问题,是你在3d中软件的布尔操作可能错误.布尔差集的时候,你应该先把要减去的物体连接为一个物体.然后再布尔. 要么就是你布尔减去了一个后要先退出,(布尔按钮要弹起来),然后再重复上一步的动作.这样可避免破面出现的可能.你试试看.

手机端怎么通过js设置viewport

1、跨浏览器的写法如下:利用 @media (width) 和@media (height) 的值来指定对应的viewpoint,示例代码如下:var w=Math.max(document.documentElement.clientWidth, window.innerWidth ||0);var h=Math.max(document.documentElement.clientHeight, window.innerHeight ||0);2、一般方法是利用window.innerWidth和window.innerHeight来指定:获取窗口的高度与宽度(不包含工具条与滚动条):var w=window.innerWidth;var h=window.innerHeight;完整代码:function myFunction(){var w=window.innerWidth;var h=window.innerHeight;x=document.getElementById("demo");x.innerHTML="Width: " + w + " Heigth: " + h;}

UE4 创建Viewport

创建自定义的 ViewportClient ,并显示 TextureRenderTarget2D 对象。设置蓝色背景。 在 ViewportClient::Draw(FViewport* Viewport,FCanvas* Canvas) 中进行绘制。 绘制RenderTarget相当于绘制“栅格图像”。 绘制一段线。 创建 Standalone Window 插件来显示 Viewport 。PluginsTPViewportSourceTPViewportPublicRenderTestViewportClient.cpp PluginsTPViewportSourceTPViewportPublicTPViewport.h 三者之间的关系 ViewportWidget--->FSceneViewport---->FViewportClient PluginsTPViewportSourceTPViewportPublicTPViewport.cpp 创建 SDockTab 。 UE4 创建Viewport

OpenGL之Viewport

1.1 窗口(Screen) 窗口其实就是屏幕,如下图1中红色圈中黑色背景的部分。所有的场景最终都是要被光栅化乘显示器上的图像,屏幕是所有场景(2D、3D等)的最终输出目的地。一个screen可以显示多个视口中的内容; 1.2 视口(Viewport) 视口就是窗口中用来显示图形的一块矩形区域,它可以和窗口等大,也可以比窗口大或者小,如图1中蓝色标示的绿色背景的区域。它具有两个意义:   u2022 定义了视镜体中的景物要被绘制到一张什么尺寸的画布之上;   u2022 定义了画布在屏幕的什么区域; 显然,如果 视景体的投影平面 定义的宽高比和 视口 所定义的宽高比 不相同 的话,那么将视景体中的物体绘制到画布上的时候会进行 拉伸或者压缩 ;而当视景体投影平面的宽高比和视口所定义的宽高比一致的时候,图像将会不进行任何缩放绘制到视口所定义的画布之上。 在实际应用中,一个窗口中会绘制多个3D场景,这个通过定义多个视口,绘制多个图像,然后 贴在 屏幕的不同区域即可。比如图中黄色笔圈中的区域,在画布中定于两个不同的viewport1 (0,0;w/2,y)和 viewport2 (0,w/2;w/2,y); 1.4 视镜体(View Frustum) 视景体(View Volume)定义了我们能够通过虚拟的3D摄像机所能看到的场景。在一个3D场景中站立中,需要摄像机的 摆放位置 和 视野 来定义我们所能够看到的东西,而这个视野就是通过视景体来定义的。在3D中,一般可以通过以下两种方式来定义视景体: 通过前面的介绍,我们大致的了解了这三个不同东西的概念。从中我们可以知道,通过定义投影矩阵,我们实际上是在虚拟的3D空间中,创建了一个视野,也就是视景体。在接着,我们通过定义视口,来描述视景体中的内容如何映射到一个虚拟的画布之上,并且这个画布最终将显示在屏幕上的什么位置。当所有的这些都设置完毕,我们绘制完毕场景之后,就能够通过硬件在我们的显示器屏幕上看到最终的画面。更理论的表述就是,通过定义投影矩阵,将3D场景投影到一个投影平面之上。通过定义视口,我们将投影平面上的内容映射到这个视口中去,并且填满它,同时根据定义视口是给定的屏幕坐标的位置,将这个视口中的图像映射到窗口的指定位置之上,最终我们就看到了图像。 glViewport是OpenGL中的一个函数。计算机图形学中,在屏幕上打开窗口的任务是由窗口系统,而不是OpenGL负责的。glViewport在默认情况下,视口被设置为占据打开窗口的整个像素矩形,如图1,窗口大小和设置视口大小相同,所以为了选择一个更小的绘图区域,就可以用glViewport函数来实现这一变换,在窗口中定义一个像素矩形,最终将图像映射到这个矩形中。例如可以对窗口区域进行划分,在同一个窗口中显示分割屏幕的效果,以显示多个视图。

svg 的viewport 和viewbox

viewport 很好理解,就是类似我们的电视机,我们只能通过看到电视机里边的内容,却无法看到电视画面外边的画面。 viewbox是什么呢,你去看文档会有很多答案,但是我觉得把握一个最基本的概念就可以, viewbox就是最后我们画图的坐标系统,也就是说我们在svg上画东西的时候,就是根据viewbox的坐标系统,来确定最后的位置的。 viewbox为什么这么难理解? 其实看了好多文章,根本都模糊不清楚,看svg精髓这本书里边说的也是云里雾里,不知所云 我觉得可以从以下几点进行理解 viewbox的定义 当viewbox的宽高比和viewport的宽高比相同的时候,首先是设置用户坐标,然后绘图 宽高比相同指的是 svg设置的width:height 与 viewbox设置的 width:height 相等 比如 这里的svg的宽高比是400: 200 = 2 viewbox设置的宽高比是 200: 100 = 2 所以这里的宽高比是一样的 表现如下 渲染过程 svg的viewport的宽高分别是800 和600 viewbox的设置宽高 分别是 0 0 800 600 这里所以用户的坐标是1:1 也就是用户坐标的一像素对应viewport的1像素 所以结果如图 表现如下 渲染过程 svg的viewport 宽高依然是800和600 viewbox的宽高比变成0 0 400 300 这里的一步首先是确定用户坐标,因为设置的用户坐标是400 * 300 ,但是实际的viewport是800和600,所以对应起来就是用户坐标的1像素对应viewport的二像素 所以 当绘制图像的时候,原来在用户坐标100, 100的点,在viewbox 是 0 0 800 600的时候,对应的viewport的物理像素是100,100的点,但是到了viewbox是 0 0 400 300的时候,用户坐标100, 100的点,对应的物理像素变成了200, 200的点了,所以整个图像变大了 这里注意的是绘制图像的坐标始终是没有变,原来是100,100 还是100,100,变化的是用户坐标到svg的viewport的转换变化了。 上面介绍了viewbox的width和height,在宽高比和viewport相同的时候的情况,现在介绍还是在宽高比和viewport相同的时候的情况下,设置viewbox的x和y是如何变化的。 其实原理是一样的,还是分成两个步骤 a, 首先设置用户坐标,也就是用户坐标到svg viewport的转换关系, b, 绘制图像 表现如下 可以看到图像向左移动了150px 原理还是按照上面的两步 1, 首先设置用户坐标,这里是svg的是800 : 600 ,而viewbox的也是800:600 所以这里是用户坐标到实际是1:1,然后因为设置了viewBox 的x是150,所以这里的用户坐标会向左移动150,所以原来绘制在用户坐标范围从(0, 0)到(150,0)的就无法显示出来了。 当宽高不相同的时候,就首先得有个标准,也就是根据什么来设置用户坐标到viewport的转换,也就是preserveAspectRatio 这个说半天也不好理解,不如直接看实际的效果图 https://www.sarasoueidan.com/demos/interactive-svg-coordinate-system/index.html 这里可以直接设置,然后查看效果 不过把握大方向 就是先设置用户坐标,再绘图即可。 参考: https://pjchender.blogspot.com/2017/03/svg.html

web开发 viewport是什么意思

《web开发从入门到放弃》

QPainter的Window和viewPort到底是什么东西

window()返回的是作为窗口框架的一个widget, 也许是用来承载当前widget的窗口, 如果当前widget本身是个单独的窗口框架的话, 返回的会是它自身~`` 例如QWidget、QDialog、QLabel....而viewPort()返回的好比像MFC中单文档那个工作区一样, 一般像QTextEdit、QTableWidget....返回它们的可编辑区域的widget~`` 这也是为什么有时单纯想通过重载paintEvent()在这类widget中绘制一些图形时不显示的原因 :),

screenpointtoray和viewportpointtoray的区别

viewport point toray视口点东丽screen point toray屏幕点东丽